https://sys.nenocourier.co.ke/api/parcels/14/1124564

Security

Token

0700533295 Username
Authenticated
Property Value
Roles
[
  "ROLE_USER"
  "ROLE_CLERK"
]
Inherited Roles none
Token
Symfony\Component\Security\Guard\Token\PostAuthenticationGuardToken {#864
  -user: App\Entity\User {#860 …}
  -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 {#404
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#400 …}
}
8.47 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#893
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#138 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#412 …}
  -map: Symfony\Component\Security\Http\AccessMap {#84 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.16 ms (none)

Authenticators

Authenticator Supports Duration Passport
"App\Api\Authentication\Authenticator"
0.08 ms
Symfony\Component\Security\Http\Authenticator\Passport\Passport {#421
  #user: App\Entity\User {#860 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#424
      -userIdentifier: "guard_authenticator_d049106da3d0fa3bd6aaf58bdbdc0378"
      -userLoader: Closure() {#417 …}
      -user: App\Entity\User {#860 …}
    }
    "Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials" => Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials {#436
      -customCredentialsChecker: [
        App\Api\Authentication\Authenticator {#66
          -JWTEncoder: Lexik\Bundle\JWTAuthenticationBundle\Encoder\LcobucciJWTEncoder {#67 …}
          -entityManager: Doctrine\ORM\EntityManager {#53 …}
        }
        "checkCredentials"
      ]
      -credentials: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NTEzNTE3MzcsImV4cCI6MTc1MTM2NjEzNywicm9sZXMiOlsiUk9MRV9VU0VSIiwiUk9MRV9DTEVSSyJdLCJ1c2VybmFtZSI6IjA3MDA1MzMyOTUiLCJ1c2VyX2lkIjoxMzl9.BrhFJvMX7fptAGyBZywRrEFPvI9EC2Aec42mBGoT-qmdaiRxewktXYiizXaGu9JX4sPLOr6TWjwg3GJX1wABhfq9nIk9ExA-d4gEYBP9j1d8g8zC7HpxGGaNOstRq2rU_LvKcsb3nH7tXRWsLJwivQRad_LE8ifeLGusb27S1p483xnHjPlHht3hgwiJXjLzXLdj5ig9IJ_pjOz4dvlqgy3mmYRZhMY10g73kaptLwjNX9lNiMh5ztac_P_6pXC_LYnigjSp1hBavKbUG0Amt5cv0cB2gxJRkkHCxMIFxIjTxqcP1F--SqVCbpSFGCID1eJtxctnN87-5PsQ2lMs5-7Zqlb1j42E268YCo13huWH4wIAeAqP_jCRn_89edKyIIytIOgKnE-bXbabVeQ_LsOVlxW2O4g9CUFq2QyZJvhC9pBIaV81OqFpvG1fc5shDq7hQVS_6XqUZbl6xycOD3esXAZNkD4VLGPkNPvEdhQ61XPwWCSJUrgCgxRg5-TfBZL_QIEIvfq2SCgVuHFjEpBUFNsiiUIQiVw3yrSB9jGQ07PGcxXdqr04ex6cYMwiyijm7JEk13oZiWclGaOd0waH20YCB08723QPfL9NExPj4vJjG0STz31rXYwXYWwMTDwOi0KDBgQKPwwJ_ApQwldIxIVZi6T9xgnnagiuxq0"
      -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/14/1124564"
  #requestUri: "/api/parcels/14/1124564"
  #baseUrl: ""
  #basePath: null
  #method: "GET"
  #format: "json"
  #session: Symfony\Component\HttpFoundation\Session\Session {#1325 …}
  #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