
Geavanceerde beveiliging
Custom authenticators, voters, security expressions, CSRF-bescherming, XSS-preventie, rate limiting, production hardening, JWT/OAuth2-misconfiguraties
1Welke interface moet een custom authenticator implementeren in Symfony 6+?
Welke interface moet een custom authenticator implementeren in Symfony 6+?
Antwoord
In Symfony 6+ moeten custom authenticators de AuthenticatorInterface uit de Security HTTP-component implementeren. Deze interface definieert de methoden supports(), authenticate(), onAuthenticationSuccess(), onAuthenticationFailure() en optioneel createToken(). Het vervangt het oude Guard-systeem dat in Symfony 4/5 werd gebruikt.
2Wat is de rol van de methode supports() in een custom authenticator?
Wat is de rol van de methode supports() in een custom authenticator?
Antwoord
De methode supports() bepaalt of de authenticator de huidige request moet afhandelen. Het ontvangt de Request en geeft een boolean terug. Bij true wordt de methode authenticate() aangeroepen, gevolgd door onAuthenticationSuccess() of onAuthenticationFailure(). Hierdoor kunnen meerdere actieve authenticators op dezelfde firewall bestaan, die elk een specifiek authenticatietype afhandelen.
3Wat moet de methode authenticate() van een custom authenticator teruggeven bij succes?
Wat moet de methode authenticate() van een custom authenticator teruggeven bij succes?
Antwoord
De methode authenticate() moet een Passport-object teruggeven dat een UserBadge (gebruikersidentificatie) en credentials badges bevat. De Passport kan ook extra badges bevatten zoals CsrfTokenBadge of RememberMeBadge. Symfony gebruikt deze Passport vervolgens om het authenticatie-token aan te maken en de gebruiker via de UserProvider te laden.
Hoe definieer je een aangepaste Voter om de toegang tot een specifieke bron te beheren?
Welke AccessDecisionManager-strategie wordt aanbevolen voor applicaties die strikte beveiliging vereisen?
+19 gespreksvragen
Andere Symfony-sollicitatieonderwerpen
Modern PHP (8.1+)
Symfony-basis
Routing & Controllers
Twig & Templates
Doctrine ORM-basisbeginselen
Symfony Formulieren
Datavalidatie
Dependency Injection & Services
Security & Authentication
Geavanceerd Doctrine
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache & prestaties
Workflow Component
Testing Symfony
Mailer Component
Vertalingen & i18n
EasyAdmin Bundle
Symfony-architectuur
Prestaties & optimalisatie
Custom Bundles
Microservices met Symfony
Real-time & WebSockets
Deployment & DevOps
Beheers Symfony voor je volgende gesprek
Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.
Begin gratis