Security
Token
| Property | Value |
|---|---|
| Roles |
[ "ROLE_ALLOWED_TO_SWITCH" "ROLE_LAUNDRY_ADMIN" ] |
| Inherited Roles | none |
| Token | Symfony\Component\Security\Core\Authentication\Token\RememberMeToken {#1093 -user: App\Entity\User {#1488 …} -roleNames: [ "ROLE_ALLOWED_TO_SWITCH" "ROLE_LAUNDRY_ADMIN" ] -attributes: [] -secret: null -firewallName: "main" } |
Firewall
main
Name
Security enabled
Stateless
Configuration
| Key | Value |
|---|---|
| provider | security.user.provider.concrete.app_user_provider |
| context | main |
| entry_point | App\Security\UserAuthenticator |
| user_checker | security.user_checker |
| access_denied_handler | (none) |
| access_denied_url | (none) |
| authenticators | [ "switch_user" "login_throttling" "remember_me" "App\Security\UserAuthenticator" ] |
Listeners
| Listener | Duration | Response |
|---|---|---|
Symfony\Component\Security\Http\Firewall\ChannelListener {#1016 -map: Symfony\Component\Security\Http\AccessMap {#1017 …} -logger: Monolog\Logger {#1005 …} -httpPort: 80 -httpsPort: 443 } |
(none) | (none) |
Symfony\Component\Security\Http\Firewall\ContextListener {#1041 -sessionKey: "_security_main" -registered: false -trustResolver: Symfony\Component\Security\Core\Authentication\AuthenticationTrustResolver {#1004 …} -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#1044 …} -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1226 …} -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#1042 …} -logger: Monolog\Logger {#1005 …} -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#979 …} } |
42.97 ms | (none) |
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#1072 -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#1047 …} } |
0.41 ms | (none) |
Symfony\Component\Security\Http\Firewall\SwitchUserListener {#1079 -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1227 …} -provider: Symfony\Bridge\Doctrine\Security\User\EntityUserProvider {#1066 …} -userChecker: Symfony\Component\Security\Core\User\InMemoryUserChecker {#1080 …} -firewallName: "main" -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#1074 …} -logger: Monolog\Logger {#1005 …} -usernameParameter: "_switch_user" -role: "ROLE_ALLOWED_TO_SWITCH" -dispatcher: Symfony\Component\HttpKernel\Debug\TraceableEventDispatcher {#1394 …} -stateless: false -urlGenerator: Symfony\Bundle\FrameworkBundle\Routing\Router {#1244 …} -targetRoute: null } |
(none) | (none) |
Symfony\Component\Security\Http\Firewall\AccessListener {#1082 -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1227 …} -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#1074 …} -map: Symfony\Component\Security\Http\AccessMap {#1017 …} } |
1.04 ms | (none) |
Symfony\Component\Security\Http\Firewall\LogoutListener {#1008 -options: [ "csrf_parameter" => "_csrf_token" "csrf_token_id" => "logout" "logout_path" => "app_logout" ] -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1227 …} -httpUtils: Symfony\Component\Security\Http\HttpUtils {#960 …} -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#979 …} -csrfTokenManager: null } |
(none) | (none) |
Authenticators
| Status | Authenticator |
|---|---|
| skipped |
"App\Security\UserAuthenticator" This authenticator did not support the request. |
| skipped |
"Symfony\Component\Security\Http\Authenticator\RememberMeAuthenticator" This authenticator did not support the request. |
Access Decision
affirmative
Strategy
Access decision log
| # | Result | Attributes | Object | ||
|---|---|---|---|---|---|
| 1 | GRANTED |
[ "ROLE_LAUNDRY_ADMIN" "ROLE_LAUNDRY_USER" "ROLE_LAUNDRY_HOSPITAL" ] |
Symfony\Component\HttpFoundation\Request {#3 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#14 …} +request: Symfony\Component\HttpFoundation\InputBag {#4 …} +query: Symfony\Component\HttpFoundation\InputBag {#9 …} +server: Symfony\Component\HttpFoundation\ServerBag {#17 …} +files: Symfony\Component\HttpFoundation\FileBag {#16 …} +cookies: Symfony\Component\HttpFoundation\InputBag {#15 …} +headers: Symfony\Component\HttpFoundation\HeaderBag {#18 …} #content: "" #languages: null #charsets: null #encodings: null #acceptableContentTypes: [ "text/html" "application/xhtml+xml" "image/avif" "image/webp" "image/apng" "application/xml" "*/*" "application/signed-exchange;v=b3" ] #pathInfo: "/laundry/admin/dashboard" #requestUri: "/laundry/admin/dashboard" #baseUrl: "" #basePath: "" #method: "GET" #format: null #session: Symfony\Component\HttpFoundation\Session\Session {#1086 …} #locale: null #defaultLocale: "pl" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: ? bool -trustedValuesCache: [] -isIisRewrite: false : "html" } |
||
|
|||||
| 2 | DENIED | ROLE_SUPERADMIN | null |
||
|
|||||
| 3 | GRANTED | ROLE_LAUNDRY_ADMIN | null |
||
|
|||||
| 4 | DENIED | ROLE_LAUNDRY_HOSPITAL | null |
||
|
|||||
| 5 | GRANTED | ROLE_LAUNDRY_ADMIN | null |
||
|
|||||
| 6 | GRANTED | dashboard_index | null |
||
|
|||||
| 7 | GRANTED | report_washed_textiles_list | null |
||
| Show voter details | |||||
| 8 | GRANTED | sticky_note_list | null |
||
|
|||||
| 9 | GRANTED | client_group_list | null |
||
|
|||||
| 10 | GRANTED | client_list | null |
||
|
|||||
| 11 | GRANTED | lumpsum_agreement_list | null |
||
|
|||||
| 12 | GRANTED | client_laundry_list | null |
||
|
|||||
| 13 | GRANTED | amortization_price_list | null |
||
| Show voter details | |||||
| 14 | GRANTED | invoice_list | null |
||
|
|||||
| 15 | GRANTED | clothe_list | null |
||
|
|||||
| 16 | GRANTED | clothes_group_list | null |
||
|
|||||
| 17 | GRANTED | textile_template_list | null |
||
|
|||||
| 18 | GRANTED | clothes_group_create | null |
||
|
|||||
| 19 | GRANTED | price_list | null |
||
|
|||||
| 20 | GRANTED | client_import | null |
||
|
|||||
| 21 | GRANTED | clothes_group_import | null |
||
|
|||||
| 22 | GRANTED | worker_import | null |
||
|
|||||
| 23 | GRANTED | product_import | null |
||
|
|||||
| 24 | GRANTED | locker_import | null |
||
|
|||||
| 25 | GRANTED | equipment_import | null |
||
|
|||||
| 26 | GRANTED | circulation_create | null |
||
|
|||||
| 27 | GRANTED | amortization_contract_list | null |
||
| Show voter details | |||||
| 28 | GRANTED | storage_document_create | null |
||
|
|||||
| 29 | GRANTED | settlement_list | null |
||
|
|||||
| 30 | GRANTED | settlement_list | null |
||
|
|||||
| 31 | GRANTED | settlement_pieces_create | null |
||
|
|||||
| 32 | GRANTED | settlement_weight_create | null |
||
|
|||||
| 33 | GRANTED | document_list | null |
||
|
|||||
| 34 | GRANTED | equipment_list | null |
||
|
|||||
| 35 | GRANTED | equipment_type_list | null |
||
|
|||||
| 36 | GRANTED | equipment_rental_list | null |
||
|
|||||
| 37 | GRANTED | device_list | null |
||
|
|||||
| 38 | GRANTED | clothes_service_list | null |
||
|
|||||
| 39 | GRANTED | clothes_service_list | null |
||
|
|||||
| 40 | GRANTED | clothes_service_reason_list | null |
||
| Show voter details | |||||
| 41 | GRANTED | report_amortizations_list | null |
||
| Show voter details | |||||
| 42 | GRANTED | user_list | null |
||
|
|||||
| 43 | GRANTED | poduct_attribute_list | null |
||
| Show voter details | |||||
| 44 | GRANTED | attribute_list | null |
||
|
|||||
| 45 | GRANTED | cassation_list | null |
||
|
|||||
| 46 | GRANTED | cassation_type_list | null |
||
|
|||||
| 47 | GRANTED | product_list | null |
||
|
|||||
| 48 | GRANTED | worker_list | null |
||
|
|||||
| 49 | GRANTED | product_kit_list | null |
||
|
|||||
| 50 | GRANTED | product_list | null |
||
|
|||||
| 51 | GRANTED | physical_inventory_list | null |
||
| Show voter details | |||||
| 52 | GRANTED | inventory_group_list | null |
||
|
|||||
| 53 | GRANTED | batch_list | null |
||
|
|||||
| 54 | GRANTED | batch_job_list | null |
||
|
|||||
| 55 | GRANTED | locker_list | null |
||
|
|||||
| 56 | GRANTED | state_status_list | null |
||
|
|||||
| 57 | GRANTED | road_map_list | null |
||
|
|||||
| 58 | GRANTED | state_machine_list | null |
||
|
|||||
| 59 | GRANTED | alert_list | null |
||
|
|||||
| 60 | GRANTED | product_returned_list | null |
||
|
|||||
| 61 | GRANTED | printer_list | null |
||
|
|||||
| 62 | GRANTED | size_list | null |
||
|
|||||
| 63 | GRANTED | product_order_list | null |
||
|
|||||
| 64 | GRANTED | product_withdrawal_list | null |
||
| Show voter details | |||||
| 65 | GRANTED | storage_list | null |
||
|
|||||
| 66 | GRANTED | storage_document_list | null |
||
|
|||||
| 67 | GRANTED | storage_history_list | null |
||
|
|||||
| 68 | GRANTED | mqtt_broker_list | null |
||
|
|||||
| 69 | GRANTED | qr_code_list | null |
||
|
|||||
| 70 | GRANTED | product_register | null |
||
|
|||||
| 71 | GRANTED | batch_mqtt | null |
||
|
|||||
| 72 | GRANTED | storage_document_mqtt | null |
||
|
|||||
| 73 | GRANTED | cassation_mqtt | null |
||
|
|||||
| 74 | GRANTED | amortization_contract_list | null |
||
| Show voter details | |||||
| 75 | GRANTED | circulation_list | null |
||
|
|||||
| 76 | GRANTED | amortization_contract_list | null |
||
| Show voter details | |||||
| 77 | GRANTED | company_update | App\Entity\Company {#1556 -id: 18 -company: "PRALNIA TEST" -nip: "8232472751" -regon: "345" -postCode: null -city: "Warszawa" -address: "ul. Praczy 3" -users: Doctrine\ORM\PersistentCollection {#3284 …} -clients: Doctrine\ORM\PersistentCollection {#3274 …} -settlements: Doctrine\ORM\PersistentCollection {#3272 …} -imageFile: null -imageName: "zrzut-ekranu-2025-12-11-101811-693a8c08e99ee840758805-6a292dd6712ea879453074.png" -permissions: [ "client_reports_washed_textiles" "client_reports_washed_textiles_by_weight" "client_reports_list_of_orders" "reports_settlements_prices" "reports_settlements_prices_weight" "reports_settlements_prices_m2" "reports_clothes_in" "reports_products_in_details" "reports_quantype" "laundry_reports_washing_frequency" "reports_washing_frequency_by_product" "laundry_reports_products_batch_difference" "reports_clothes_prices" "reports_clothes_prices_weight" "reports_clothes_prices_m2" "reports_products" "reports_clothes_by_worker" "laundry_reports_washing_depracted_by_product" "laundry_reports_state_machine" "laundry_reports_depracted" "laundry_reports_amortizations" "reports_products_registered" "reports_clothes" "reports_client_by_product" "reports_cassation" "reports_washing_frequency_by_worker" "reports_clothes_service" "reports_device_reads" "reports_equipments_by_client" "allowed_to_switch_user" "settlement_weight" "settlement_pieces" "report_show_diff" "worker_list_show" "attribute_list_show" "product_list_show" "laundry_batch" "status_list_show" "laundry_products_change_status" "road_map_show" "create_attribute_group" "laundry_cassation_show" "equipment_show" "state_machine_list_show" "device_show" "alert_show" "laundry_profile" "laundry_amortizations" "laundry_prices" "laundry_import_show" "laundry_clothes_import" "laundry_workers_import" "laundry_product_import" "laundry_boxes_import" "laundry_product_search" "laundry_boxes" "clothes_service" "inventory" ] -footerWWW: "www.pralnia-pracz.pl" -footerPhone: "123456789" -footerEmail: "pralnia@aska.com.pl" -reportSettings: [] -settings: Doctrine\ORM\PersistentCollection {#3238 …} -active: true -attributes: Doctrine\ORM\PersistentCollection {#3445 …} -companySettings: App\Entity\CompanySetting {#3690 …} -amortizations: Doctrine\ORM\PersistentCollection {#3504 …} -printTemplates: Doctrine\ORM\PersistentCollection {#3561 …} -clothesGroups: Doctrine\ORM\PersistentCollection {#3654 …} -allowedRoles: Doctrine\ORM\PersistentCollection {#3652 …} -logs: Doctrine\ORM\PersistentCollection {#3689 …} #createdBy: App\Entity\User {#1506 …} #updatedBy: App\Entity\User {#1506 …} #createdAt: DateTime @1720448549 {#3283 : 2024-07-08 16:22:29.0 Europe/Warsaw (+02:00) } #updatedAt: DateTime @1782294434 {#3286 : 2026-06-24 11:47:14.0 Europe/Warsaw (+02:00) } #deactivateDate: null } |
||
|
|||||
| 78 | DENIED | ROLE_CLIENT_ADMIN | null |
||
|
|||||
| 79 | DENIED | ROLE_CLIENT_USER | null |
||
|
|||||
| 80 | GRANTED | ROLE_LAUNDRY_ADMIN | null |
||
|
|||||
| 81 | GRANTED | ROLE_ALLOWED_TO_SWITCH | null |
||
|
|||||
| 82 | DENIED | IS_IMPERSONAtTOR | null |
||
| 83 | DENIED | IS_IMPERSONATOR | null |
||
|
|||||
| 84 | GRANTED | ROLE_LAUNDRY_ADMIN | null |
||
|
|||||
| 85 | GRANTED | user_locale | null |
||
|
|||||
| 86 | GRANTED | settlement_list | null |
||
|
|||||
| 87 | GRANTED | ROLE_LAUNDRY_ADMIN | null |
||
|
|||||
| 88 | GRANTED | product_list | null |
||
|
|||||
| 89 | GRANTED | batch_list | null |
||
|
|||||
| 90 | GRANTED | product_list | null |
||
|
|||||