https://sys.nenocourier.co.ke/api/parcels/1/1092315

Security

Token

0728129749 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 {#79
  -map: Symfony\Component\Security\Http\AccessMap {#80 …}
  -authenticationEntryPoint: null
  -logger: Symfony\Bridge\Monolog\Logger {#71 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#409
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#451 …}
}
11.14 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#893
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#134 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#405 …}
  -map: Symfony\Component\Security\Http\AccessMap {#80 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.20 ms (none)

Authenticators

Authenticator Supports Duration Passport
"App\Api\Authentication\Authenticator"
0.17 ms
Symfony\Component\Security\Http\Authenticator\Passport\Passport {#422
  #user: App\Entity\User {#860 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#443
      -userIdentifier: "guard_authenticator_426b4f0f259c66007b79c1fdef304d76"
      -userLoader: Closure() {#438 …}
      -user: App\Entity\User {#860 …}
    }
    "Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials" => Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials {#433
      -customCredentialsChecker: [
        App\Api\Authentication\Authenticator {#62
          -JWTEncoder: Lexik\Bundle\JWTAuthenticationBundle\Encoder\LcobucciJWTEncoder {#63 …}
          -entityManager: Doctrine\ORM\EntityManager {#49 …}
        }
        "checkCredentials"
      ]
      -credentials: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NDY4NTE4MzMsImV4cCI6MTc0Njg2NjIzMywicm9sZXMiOlsiUk9MRV9VU0VSIiwiUk9MRV9DTEVSSyJdLCJ1c2VybmFtZSI6IjA3MjgxMjk3NDkiLCJ1c2VyX2lkIjoxNTB9.KizipHwq34zGf814GKlS8FNz6ESFWCVPDR6Fk7VVI1PTo9oHVeLx1RSSu7OhhH79jhASZJ6ulprZt4kGCQb-DJZJ3W6vGw2y450jokAWAdN-nw61z7v1fhbUKvB6kvCFPNUNuOdK5sJ0O08Y65iDOO0hW8xugFT4MynLT3dPHHO31g99HrrazeSUSh3op2LYloqntv5G9vitBIyUA0M-9i0uPM4etulntoyPIznJXNk6m2gYBgT_Zb8oJXe0xd9p6rvJzh3uhqeWFiImgzslXZa9IYx7K-_D1rOc-tEfYWMSY_tu0dQo4RJAGjFLCIAgESZN7U-KuWaosB_FUhtN2FQv7VXhruCGFHkAm9G5boxff6C6PRdHdA9G9aOnsYUkud7GFbm1nRl2eV17jggJgq7JRKSoYxzc82VG0IXge0mT--oiiDltV12NNHYqKLXHMRY6wwSyX_ek8Dnqz5jSf5uoaUeGoQJuh1CBDeDxYff6Yy3wOQBJgGcdG1kQX8W2PgQIiMCls6r3uOzQ4cJAnmxlc-NYTq1Uk1rEcEkadB-5rn9m9E7XPVn2jdtUQkaXchNC_N4PiBGJfkbUXWwbqnrRlRgvQ5oWpRuuShhDiIfrboYPBcW5QpVlz0R6b0zYolumCri1HtpTjcxUgYS-uZrnmeHt7tnFzc6eJEH5Xr8"
      -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/1/1092315"
  #requestUri: "/api/parcels/1/1092315"
  #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