https://verwaltung.plattform-handwerk.kursimple.de/rest/course/167?showFields=1

Security

Token

Username
Authenticated
Property Value
Roles
[
  "ROLE_USER"
]
Inherited Roles
[
  "ROLE_FRONTEND"
]
Token
League\Bundle\OAuth2ServerBundle\Security\Authentication\Token\OAuth2Token {#678
  -user: League\Bundle\OAuth2ServerBundle\Security\User\NullUser {#633 …}
  -roleNames: [
    "ROLE_USER"
  ]
  -authenticated: true
  -attributes: [
    "access_token_id" => "e0d8dd3ab47343be26323ff7de7c48f8fac910cc918728f21088bfe15685b90642ede76ec8e2cf4b"
    "oauth_client_id" => "65c6366c620f9"
    "scopes" => [
      "user"
    ]
  ]
}

Firewall

rest Name
Security enabled
Stateless

Configuration

Key Value
provider App\User\Security\UserProvider
context rest
entry_point security.authenticator.oauth2.rest
user_checker security.user_checker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "oauth2"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#221
  -map: Symfony\Component\Security\Http\AccessMap {#222 …}
  -authenticationEntryPoint: null
  -logger: Symfony\Bridge\Monolog\Logger {#213 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#248
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#317 …}
  -sessionKey: "_security_rest"
  -logger: Symfony\Bridge\Monolog\Logger {#213 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#247 …}
  -dispatcher: Symfony\Component\EventDispatcher\EventDispatcher {#242 …}
  -registered: false
  -trustResolver: Symfony\Component\Security\Core\Authentication\AuthenticationTrustResolver {#196 …}
  -rememberMeServices: null
  -sessionTrackerEnabler: [
    Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#321 …}
    "enableUsageTracking"
  ]
}
4.02 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#172
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#257 …}
}
96.61 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#259
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#321 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#644 …}
  -map: Symfony\Component\Security\Http\AccessMap {#222 …}
  -authManager: null
  -exceptionOnNoToken: false
}
0.94 ms (none)

Authenticators

Authenticator Supports Duration Passport
"League\Bundle\OAuth2ServerBundle\Security\Authenticator\OAuth2Authenticator"
88.32 ms
Symfony\Component\Security\Http\Authenticator\Passport\SelfValidatingPassport {#151
  #user: League\Bundle\OAuth2ServerBundle\Security\User\NullUser {#633 …}
  -badges: [
    "Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge" => Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge {#140
      -userIdentifier: ""
      -userLoader: Closure(string $userIdentifier): UserInterface {#150 …}
      -user: League\Bundle\OAuth2ServerBundle\Security\User\NullUser {#633 …}
    }
    "League\Bundle\OAuth2ServerBundle\Security\Passport\Badge\ScopeBadge" => League\Bundle\OAuth2ServerBundle\Security\Passport\Badge\ScopeBadge {#669
      -resolved: true
      -scopes: [
        "user"
      ]
    }
  ]
  -attributes: [
    "accessTokenId" => "e0d8dd3ab47343be26323ff7de7c48f8fac910cc918728f21088bfe15685b90642ede76ec8e2cf4b"
    "oauthClientId" => "65c6366c620f9"
  ]
}

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
4
"App\Security\Voter\CategoryVoter"
5
"App\Security\Voter\CourseDataVoter"
6
"App\Security\Voter\CourseFieldVoter"
7
"App\Security\Voter\CourseOccurrenceVoter"
8
"App\Security\Voter\CourseSecurityVoter"
9
"App\Security\Voter\CourseSeriesVoter"
10
"App\Security\Voter\CourseSubscriptionVoter"
11
"App\Security\Voter\CourseTypeVoter"
12
"App\Security\Voter\CourseVoter"
13
"App\Security\Voter\FrontendClientVoter"
14
"App\Security\Voter\InvoiceVoter"
15
"App\Security\Voter\OAuthClientVoter"
16
"App\Security\Voter\OccurrenceVoter"
17
"App\Security\Voter\OrderVoter"
18
"App\Security\Voter\PersonVoter"
19
"App\Security\Voter\VenueSecurityVoter"
20
"App\Security\Voter\VenueVoter"
21
"App\User\Security\Voter\ClientVoter"

Access decision log

# Result Attributes Object
1 GRANTED IS_AUTHENTICATED_FULLY
Symfony\Component\HttpFoundation\Request {#57
  +attributes: Symfony\Component\HttpFoundation\ParameterBag {#99 …}
  +request: Symfony\Component\HttpFoundation\InputBag {#105 …}
  +query: Symfony\Component\HttpFoundation\InputBag {#100 …}
  +server: Symfony\Component\HttpFoundation\ServerBag {#96 …}
  +files: Symfony\Component\HttpFoundation\FileBag {#97 …}
  +cookies: Symfony\Component\HttpFoundation\InputBag {#98 …}
  +headers: Symfony\Component\HttpFoundation\HeaderBag {#95 …}
  #content: ""
  #languages: null
  #charsets: null
  #encodings: null
  #acceptableContentTypes: null
  #pathInfo: "/rest/course/167"
  #requestUri: "/rest/course/167?showFields=1"
  #baseUrl: ""
  #basePath: null
  #method: "GET"
  #format: "json"
  #session: Symfony\Component\HttpFoundation\Session\Session {#260 …}
  #locale: null
  #defaultLocale: "de"
  -preferredFormat: null
  -isHostValid: true
  -isForwardedValid: true
  -isSafeContentPreferred: null
  basePath: ""
}
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
ACCESS GRANTED
Show voter details