PATCH https://api.simulatorestrategico.com/scheduled_learnings/2639

Security

Token

fortesedaniel@gmail.com Username
Authenticated
Property Value
Roles
[
  "ROLE_USER"
]
Inherited Roles none
Token
Lexik\Bundle\JWTAuthenticationBundle\Security\Authenticator\Token\JWTPostAuthenticationToken {#863
  -user: App\Entity\User {#841 …}
  -roleNames: [
    "ROLE_USER"
  ]
  -attributes: []
  -firewallName: "main"
  -token: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NzkzODc2OTAsImV4cCI6MTc3OTk5MjQ5MCwicm9sZXMiOlsiUk9MRV9VU0VSIl0sInVzZXJuYW1lIjoiZm9ydGVzZWRhbmllbEBnbWFpbC5jb20iLCJpZCI6NjcyLCJmaXJzdF9uYW1lIjoiRGFuaWVsIiwibGFzdF9uYW1lIjoiRm9ydGVzZSIsInRheF9pZCI6IkZSVEROTDA2VDMwQzM1MlMiLCJtZW1iZXJzaGlwIjp7InR5cGUiOiJQcm9mZXNzaW9uYWwiLCJleHBpcmVzX2F0IjoiMjAyNy0wNS0yMVQxODoyMToyOSswMDowMCJ9fQ.NZ89SWdp_qpek5gpj41FOm5j9xvLoDXoAP-vkDAuRJ87mqy1rzWLpjUWQIv3IsE39H95NVzDspEnQ2YvZpqO7AWZKnRjFePyBQGQSqjvuphB0wCU5lSIIsQImDGSwtEC2VxWOZoVr_i0-NhiqIp-UnsWALMScfQXO3EhccccMGB4HhE5s2IvPDxYX90NHjdO3t9ZkDZ2Qm-aM4czg_NyJLWEupVrBpa0VRj_if8kCrlQpGls8BvD5lxbcZ65LMLLmLwdBniK6nirVc_OV4YzUBwIT_e6sA5ULg2pHVmCjM05nANbFX0BxHOE89CrJBWa07Vr0Qq-JWrxDtD3GnL-3Q"
}

Firewall

main Name
Security enabled
Stateless

Configuration

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

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#626
  -map: Symfony\Component\Security\Http\AccessMap {#627 …}
  -logger: Monolog\Logger {#616 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#643
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#264 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#616 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#644 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#633 …}
  -registered: true
  -trustResolver: Symfony\Component\Security\Core\Authentication\AuthenticationTrustResolver {#373 …}
  -sessionTrackerEnabler: null
}
0.02 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#778
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#776 …}
}
7.70 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#780
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#264 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#257 …}
  -map: Symfony\Component\Security\Http\AccessMap {#627 …}
}
0.00 ms (none)

Authenticators

Authenticator Supports Authenticated Duration Passport Badges
"Symfony\Component\Security\Http\Authenticator\JsonLoginAuthenticator"
0.00 ms (none) (none)
"Gesdinet\JWTRefreshTokenBundle\Security\Http\Authenticator\RefreshTokenAuthenticator"
0.00 ms (none) (none)
"Lexik\Bundle\JWTAuthenticationBundle\Security\Authenticator\JWTAuthenticator"
0.94 ms
Symfony\Component\Security\Http\Authenticator\Passport\SelfValidatingPassport {#623
  #user: App\Entity\User {#841 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#785
      -userIdentifier: "fortesedaniel@gmail.com"
      -userLoader: Closure($userIdentifier) {#787 …}
      -user: App\Entity\User {#841 …}
      -attributes: null
    }
  ]
  -attributes: [
    "payload" => [
      "iat" => 1779387690
      "exp" => 1779992490
      "roles" => [
        "ROLE_USER"
      ]
      "username" => "fortesedaniel@gmail.com"
      "id" => 672
      "first_name" => "Daniel"
      "last_name" => "Fortese"
      "tax_id" => "FRTDNL06T30C352S"
      "membership" => [
        "type" => "Professional"
        "expires_at" => "2027-05-21T18:21:29+00:00"
      ]
    ]
    "token" => "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NzkzODc2OTAsImV4cCI6MTc3OTk5MjQ5MCwicm9sZXMiOlsiUk9MRV9VU0VSIl0sInVzZXJuYW1lIjoiZm9ydGVzZWRhbmllbEBnbWFpbC5jb20iLCJpZCI6NjcyLCJmaXJzdF9uYW1lIjoiRGFuaWVsIiwibGFzdF9uYW1lIjoiRm9ydGVzZSIsInRheF9pZCI6IkZSVEROTDA2VDMwQzM1MlMiLCJtZW1iZXJzaGlwIjp7InR5cGUiOiJQcm9mZXNzaW9uYWwiLCJleHBpcmVzX2F0IjoiMjAyNy0wNS0yMVQxODoyMToyOSswMDowMCJ9fQ.NZ89SWdp_qpek5gpj41FOm5j9xvLoDXoAP-vkDAuRJ87mqy1rzWLpjUWQIv3IsE39H95NVzDspEnQ2YvZpqO7AWZKnRjFePyBQGQSqjvuphB0wCU5lSIIsQImDGSwtEC2VxWOZoVr_i0-NhiqIp-UnsWALMScfQXO3EhccccMGB4HhE5s2IvPDxYX90NHjdO3t9ZkDZ2Qm-aM4czg_NyJLWEupVrBpa0VRj_if8kCrlQpGls8BvD5lxbcZ65LMLLmLwdBniK6nirVc_OV4YzUBwIT_e6sA5ULg2pHVmCjM05nANbFX0BxHOE89CrJBWa07Vr0Qq-JWrxDtD3GnL-3Q"
  ]
}
UserBadge

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Symfony\Component\Security\Core\Authorization\Voter\RoleVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"