Symfony

Geavanceerde beveiliging

Custom authenticators, voters, security expressions, CSRF-bescherming, XSS-preventie, rate limiting, production hardening, JWT/OAuth2-misconfiguraties

22 gespreksvragen·
Senior
1

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.

2

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.

3

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.

4

Hoe definieer je een aangepaste Voter om de toegang tot een specifieke bron te beheren?

5

Welke AccessDecisionManager-strategie wordt aanbevolen voor applicaties die strikte beveiliging vereisen?

+19 gespreksvragen

Beheers Symfony voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis