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

Security

Token

0792198429 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 {#77
  -map: Symfony\Component\Security\Http\AccessMap {#78 …}
  -authenticationEntryPoint: null
  -logger: Symfony\Bridge\Monolog\Logger {#69 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#408
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#413 …}
}
19.06 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 {#403 …}
  -map: Symfony\Component\Security\Http\AccessMap {#78 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.29 ms (none)

Authenticators

Authenticator Supports Duration Passport
"App\Api\Authentication\Authenticator"
0.52 ms
Symfony\Component\Security\Http\Authenticator\Passport\Passport {#442
  #user: App\Entity\User {#620 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#436
      -userIdentifier: "guard_authenticator_520892e2bed4ff7145affe3b652d653a"
      -userLoader: Closure() {#447 …}
      -user: App\Entity\User {#620 …}
    }
    "Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials" => Symfony\Component\Security\Http\Authenticator\Passport\Credentials\CustomCredentials {#426
      -customCredentialsChecker: [
        App\Api\Authentication\Authenticator {#60
          -JWTEncoder: Lexik\Bundle\JWTAuthenticationBundle\Encoder\LcobucciJWTEncoder {#61 …}
          -entityManager: Doctrine\ORM\EntityManager {#47 …}
        }
        "checkCredentials"
      ]
      -credentials: "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NjUyNzc4OTcsImV4cCI6MTc2NTI5MjI5Nywicm9sZXMiOlsiUk9MRV9VU0VSIiwiUk9MRV9DTEVSSyJdLCJ1c2VybmFtZSI6IjA3OTIxOTg0MjkiLCJ1c2VyX2lkIjoxNjB9.XhqoSNzppsdDIqUNiZKJYpSJjCWXvHXBCBE3rmeyEjfakUTzcieLKgInosElxBIJKwuz5V6xamcxO5kjAKKz8m_FjXGKB-5OVl7uWOVPEQAQE7UmGbi7fxemO9dnrAlbPW_aFFebrUxKBmXcf-MgZk8JedeuGYZcAzcGiHd6seqIJZkjC-XYGwd_5QNM-DCAt0fMbvs9YKwoZjc9As6m_1M_R87pFFtuc_t1nPZxP741itgLlcQWt48zycHcdvNmYSkDQDSWhks6H9CRC_x7DJXo7ujlxwsS--D4B5YI2TQtjY9gr294I9UlNvh7fq3mvzw04NU5KhTsK-wxIPeWU3O4yHjzfhSk9j9CDTPm6ngPhRp75SlsQ9ySjCSgK12iuqPRje_sKUt9Ov7EOrV6924agFMJX5eTW-Jud0x2sew8fEbnLPhQrATUF-6m7OwRhub0wvsffm4IXMCD40xS77lXpMS4utkS9FGPL7BOYfiA3asXfmhSP35LKCVkd2PYqF0WBUekd42rSVSA0-PMTzZfrcZVpPlRlbMVF3B2VeCPXixHdS3xhZren3MSzjE_yokK3sFeuE45IPjZeDRftno9gBFot9PtreoESCmc4Kbt9ECNvXdtvc3IP4Uqtr4fCTOVx_iQ8ogAuEiDd0r7S9DW6njvZkWIFcq4iakN8MQ"
      -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/1228485"
  #requestUri: "/api/parcels/1/1228485"
  #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