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

Security

Token

0728129749 Username
Authenticated
Property Value
Roles
[
  "ROLE_USER"
  "ROLE_CLERK"
]
Inherited Roles none
Token
Symfony\Component\Security\Guard\Token\PostAuthenticationGuardToken {#624
  -user: App\Entity\User {#620 …}
  -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 {#78
  -map: Symfony\Component\Security\Http\AccessMap {#79 …}
  -authenticationEntryPoint: null
  -logger: Symfony\Bridge\Monolog\Logger {#70 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#410
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#409 …}
}
14.59 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#653
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#136 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#405 …}
  -map: Symfony\Component\Security\Http\AccessMap {#79 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.64 ms (none)

Authenticators

Authenticator Supports Duration Passport
"App\Api\Authentication\Authenticator"
0.11 ms
Symfony\Component\Security\Http\Authenticator\Passport\Passport {#448
  #user: App\Entity\User {#620 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#422
      -userIdentifier: "guard_authenticator_f16671214a48c954ef2438beb7b76b0c"
      -userLoader: Closure() {#437 …}
      -user: App\Entity\User {#620 …}
    }
    "Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials" => Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials {#443
      -customCredentialsChecker: [
        App\Api\Authentication\Authenticator {#61
          -JWTEncoder: Lexik\Bundle\JWTAuthenticationBundle\Encoder\LcobucciJWTEncoder {#62 …}
          -entityManager: Doctrine\ORM\EntityManager {#48 …}
        }
        "checkCredentials"
      ]
      -credentials: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NjYwMjg4NjIsImV4cCI6MTc2NjA0MzI2Miwicm9sZXMiOlsiUk9MRV9VU0VSIiwiUk9MRV9DTEVSSyJdLCJ1c2VybmFtZSI6IjA3MjgxMjk3NDkiLCJ1c2VyX2lkIjoxNTB9.XTbNEdVxWgPQB-tbzaHE10bf_woccYj6t5H4LO7-oF8___pa-gKIiCaIvT7I6BmlA211Crt_FE1VB4pi6jQsjtaYklPz6VLgW3YS-oJCOHBb2xfRr9Uixz6u9TPCAVPnFQD-H042AtVlyXq4ZS0VEfaJV9ID4iRul_1fbIqn0oTi7i84wPWa9ktc66nCKtCTMxslCFgohr0Ol9sijz9AeueqhgHNVDg_RaIXQOuJA79N226fKMp2wOC162bg0OHX8kWfqkGij5LUI7f5kpijTTgGpUiW6UMKExIjjN-S9DJ8J3cdJtvUp4pdG9-lCHK1MX2qlsREWl5vnCuY-Se5Mev2er7SWOikaZ1g1oF6Z-H7EPpvqyAEAk3ArxRky4Q5rP6nOhjns6GxT6j65BSyW_CJIy8CNfwqQMjZVohVu7-ceByzPcDDeJC9g2mvncT6bISSbzVLXT11C9JExsm_Pv_MOBevIcXu_mq_kGkfJj8bqsg8ctgvNn8AZrX_TfJwThZu4mmGV9DaezYlOFL84I51uCZcFDJT86qnJJxAqF-U8ZcREfoYpS7hcpzvXsi2VmLkuxMuxFNWa6wA67r78CPdcjb0q-AgfqVAEab_5HrY1IlRo2tc3gvH6jtSzH_ERviqvaVr_gpNBKj63SIOMQ_hWJi8wUTDaYYUPdgO31o"
      -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/1234237"
  #requestUri: "/api/parcels/1/1234237"
  #baseUrl: ""
  #basePath: null
  #method: "GET"
  #format: "json"
  #session: Symfony\Component\HttpFoundation\Session\Session {#1154 …}
  #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