https://sys.nenocourier.co.ke/api/parcels/2/1405264

Security

Token

0723236033 Username
Authenticated
Property Value
Roles
[
  "ROLE_USER"
  "ROLE_CLERK"
]
Inherited Roles none
Token
Symfony\Component\Security\Guard\Token\PostAuthenticationGuardToken {#906
  -user: App\Entity\User {#902 …}
  -roleNames: [
    "ROLE_USER"
    "ROLE_CLERK"
  ]
  -authenticated: true
  -attributes: []
  -providerKey: "api"
}

Firewall

api Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.sys_users
context (none)
entry_point security.authenticator.guard.api.0
user_checker security.user_checker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "guard"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#83
  -map: Symfony\Component\Security\Http\AccessMap {#84 …}
  -authenticationEntryPoint: null
  -logger: Symfony\Bridge\Monolog\Logger {#75 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#364
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#344 …}
}
20.95 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#935
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#157 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#371 …}
  -map: Symfony\Component\Security\Http\AccessMap {#84 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.45 ms (none)

Authenticators

Authenticator Supports Duration Passport
"App\Api\Authentication\Authenticator"
0.62 ms
Symfony\Component\Security\Http\Authenticator\Passport\Passport {#435
  #user: App\Entity\User {#902 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#512
      -userIdentifier: "guard_authenticator_4ae44ba3ca3afdadd5a7bdbc94f4edff"
      -userLoader: Closure() {#494 …}
      -user: App\Entity\User {#902 …}
    }
    "Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials" => Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials {#438
      -customCredentialsChecker: [
        App\Api\Authentication\Authenticator {#67
          -JWTEncoder: Lexik\Bundle\JWTAuthenticationBundle\Encoder\LcobucciJWTEncoder {#68 …}
          -entityManager: Doctrine\ORM\EntityManager {#54 …}
        }
        "checkCredentials"
      ]
      -credentials: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3ODc2MDkyNTcsImV4cCI6MTc4NzYyMzY1Nywicm9sZXMiOlsiUk9MRV9VU0VSIiwiUk9MRV9DTEVSSyJdLCJ1c2VybmFtZSI6IjA3MjMyMzYwMzMiLCJ1c2VyX2lkIjo3OX0.yLO0B4AB32KT48T_v4EYbDKykre9tFJtO7Cr6u_qrWjKqsLRd_OfjQKfUsDKuosO4EYN41bzbyadxJt9Ul8Y0BDoxxs84zP1qUURBbwNFzU5ti0nod_dyL5KpHpW-dKvWyEnTplVsxt7SKgdNK77TuaeX6reFt3nt2I3Gt10oNQNMd76ZKEu24PWHlSPn48Bvvjq3BR-clFPDcW59VN6gpxrdSI9UyCgSbyZnwAPq_O5bJbEGJFree9wcR-dv_E1u0SPYh-zakBzsqhlashr86yDrDE600ItIYBy0QQEsKN2wZtOYfQ-o8S0WIFCktN-9CVvQAzSH_7GUxlNKz0qtHof0gdPr5_DJ8fSfUiGOmkv23CeBrgEP56v-pAZa_ekNepHlJH2ZOPPjtnyYvd5J0WaR2DjUalk9jEJpYLEKP1bvURvW4U1Q4eIU8YCCYDW4X_XUNwgl-VrnAgBvCEP4UmYvOZzSzC-RF6LnHSmD_VzbjPYYORsQ7uszTV3a6QT97uvyx07S_k2WZtyIB7xLZw41LREATVTjWpXpURgJFEdw84WOVFxZrF-Ali5PTconUZb-nGHBedyPGlQkrFSYSUfdsdnus_YDSciC61k5504bJBqR2aZyTNq8etfkiThZdHKjrvPSMSqWJaW9KYVgAxTugbkKpP8rUWbTqTEPWM"
      -resolved: true
    }
  ]
  -attributes: []
}

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"

Access decision log

# Result Attributes Object
1 GRANTED ROLE_CLERK
Symfony\Component\HttpFoundation\Request {#2
  +attributes: Symfony\Component\HttpFoundation\ParameterBag {#14 …}
  +request: Symfony\Component\HttpFoundation\InputBag {#10 …}
  +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: null
  #pathInfo: "/api/parcels/2/1405264"
  #requestUri: "/api/parcels/2/1405264"
  #baseUrl: ""
  #basePath: null
  #method: "GET"
  #format: "json"
  #session: Symfony\Component\HttpFoundation\Session\Session {#1377 …}
  #locale: null
  #defaultLocale: "en"
  -preferredFormat: null
  -isHostValid: true
  -isForwardedValid: true
  -isSafeContentPreferred: null
  -isIisRewrite: false
  basePath: ""
}
"Symfony\Component\Security\Core\Authorization\Voter\RoleVoter"
ACCESS GRANTED
Show voter details