Security

Token

liteyear@nomad.fr Username
Authenticated
Property Value
Roles
[
  "ROLE_COMPANY"
  "ROLE_USER"
]
Inherited Roles none
Token
Lexik\Bundle\JWTAuthenticationBundle\Security\Authenticator\Token\JWTPostAuthenticationToken {#395
  -token: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NzA3MTUxNjgsImV4cCI6MTc3MDgwMTU2OCwicm9sZXMiOlsiUk9MRV9DT01QQU5ZIiwiUk9MRV9VU0VSIl0sInVzZXJuYW1lIjoibGl0ZXllYXJAbm9tYWQuZnIiLCJtZXJjdXJlIjp7InN1YnNjcmliZSI6WyJodHRwczovLy91c2Vycy8xMi9ub3RpZmljYXRpb25zIl19fQ.D3T42XoN1BFSAuG2Ehm_f9rIwLWt2BEG8G1YC6d9NJVnAuaSqzyesa5zfm5a8FiyQyRZZ4L6BcViRirBzPolMukUQpqxcPBU6dj1SmxmrhRXbvfTm_8zRstPdnE8u2O2C6yroG0fHTxukKUsEWYj_UtkoLzUxql_H0k97ozAYCC04WI6ZEM6gOiNLCppm90ZxrHZenWWaTYnhhX0OfZRzrn4tBQsnsZbzS9GlBODkeOE4C0UoU-8PVgsSpMz4_1kisr0subDFUNmnPyPeHwx5UxBFm4HS95nobA7bBbFeAGBimIk-zkbC3sxZMl_paJokp8vUsMhP1Yctl2O3xu-fA"
  -firewallName: "api"
  -user: App\Entity\User {#1469 …}
  -roleNames: [
    "ROLE_COMPANY"
    "ROLE_USER"
  ]
  -authenticated: true
  -attributes: []
}

Firewall

api Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context (none)
entry_point security.authenticator.jwt.api
user_checker security.user_checker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "jwt"
  "json_login"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#640
  -map: Symfony\Component\Security\Http\AccessMap {#638 …}
  -authenticationEntryPoint: null
  -logger: Symfony\Bridge\Monolog\Logger {#658 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#630
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#629 …}
}
33.37 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#632
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#164 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#60 …}
  -map: Symfony\Component\Security\Http\AccessMap {#638 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.20 ms (none)

Authenticators

Authenticator Supports Duration Passport
"Symfony\Component\Security\Http\Authenticator\JsonLoginAuthenticator"
0.00 ms (none)
"Lexik\Bundle\JWTAuthenticationBundle\Security\Authenticator\JWTAuthenticator"
0.36 ms
Symfony\Component\Security\Http\Authenticator\Passport\SelfValidatingPassport {#397
  #user: App\Entity\User {#1469 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#426
      -userIdentifier: "liteyear@nomad.fr"
      -userLoader: Closure($userIdentifier) {#427 …}
      -user: App\Entity\User {#1469 …}
    }
  ]
  -attributes: [
    "payload" => [
      "iat" => 1770715168
      "exp" => 1770801568
      "roles" => [
        "ROLE_COMPANY"
        "ROLE_USER"
      ]
      "username" => "liteyear@nomad.fr"
      "mercure" => [
        "subscribe" => [
          "https:///users/12/notifications"
        ]
      ]
    ]
    "token" => "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NzA3MTUxNjgsImV4cCI6MTc3MDgwMTU2OCwicm9sZXMiOlsiUk9MRV9DT01QQU5ZIiwiUk9MRV9VU0VSIl0sInVzZXJuYW1lIjoibGl0ZXllYXJAbm9tYWQuZnIiLCJtZXJjdXJlIjp7InN1YnNjcmliZSI6WyJodHRwczovLy91c2Vycy8xMi9ub3RpZmljYXRpb25zIl19fQ.D3T42XoN1BFSAuG2Ehm_f9rIwLWt2BEG8G1YC6d9NJVnAuaSqzyesa5zfm5a8FiyQyRZZ4L6BcViRirBzPolMukUQpqxcPBU6dj1SmxmrhRXbvfTm_8zRstPdnE8u2O2C6yroG0fHTxukKUsEWYj_UtkoLzUxql_H0k97ozAYCC04WI6ZEM6gOiNLCppm90ZxrHZenWWaTYnhhX0OfZRzrn4tBQsnsZbzS9GlBODkeOE4C0UoU-8PVgsSpMz4_1kisr0subDFUNmnPyPeHwx5UxBFm4HS95nobA7bBbFeAGBimIk-zkbC3sxZMl_paJokp8vUsMhP1Yctl2O3xu-fA"
  ]
}

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
4
"App\Security\Voter\DeclarativeVoter"
5
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 GRANTED IS_AUTHENTICATED_FULLY
Symfony\Component\HttpFoundation\Request {#3
  +attributes: Symfony\Component\HttpFoundation\ParameterBag {#13 …}
  +request: Symfony\Component\HttpFoundation\InputBag {#9 …}
  +query: Symfony\Component\HttpFoundation\InputBag {#8 …}
  +server: Symfony\Component\HttpFoundation\ServerBag {#16 …}
  +files: Symfony\Component\HttpFoundation\FileBag {#15 …}
  +cookies: Symfony\Component\HttpFoundation\InputBag {#14 …}
  +headers: Symfony\Component\HttpFoundation\HeaderBag {#17 …}
  #content: ""
  #languages: null
  #charsets: null
  #encodings: null
  #acceptableContentTypes: [
    "application/json"
  ]
  #pathInfo: "/api/productions-analytics"
  #requestUri: "/api/productions-analytics?organisationId=1&optionSelect=V&dateDebut=01-02-2026&dateFin=28-02-2026&_t=1770716205283"
  #baseUrl: ""
  #basePath: null
  #method: "GET"
  #format: "json"
  #session: Symfony\Component\HttpFoundation\Session\Session {#6561 …}
  #locale: null
  #defaultLocale: "en"
  -preferredFormat: null
  -isHostValid: true
  -isForwardedValid: true
  -isSafeContentPreferred: null
  basePath: ""
}
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
ACCESS GRANTED
Show voter details