Symfony

Segurança avançada

Custom authenticators, voters, security expressions, proteção CSRF, prevenção de XSS, rate limiting, hardening em produção, configurações incorretas de JWT/OAuth2

22 perguntas de entrevista·
Senior
1

Qual interface um custom authenticator deve implementar no Symfony 6+?

Resposta

No Symfony 6+, os custom authenticators devem implementar AuthenticatorInterface do componente Security HTTP. Essa interface define os métodos supports(), authenticate(), onAuthenticationSuccess(), onAuthenticationFailure() e, opcionalmente, createToken(). Ela substitui o antigo sistema Guard que era usado no Symfony 4/5.

2

Qual é o papel do método supports() em um custom authenticator?

Resposta

O método supports() determina se o authenticator deve processar a requisição atual. Ele recebe a Request e retorna um booleano. Se for true, o método authenticate() seguido de onAuthenticationSuccess() ou onAuthenticationFailure() será chamado. Isso permite ter vários authenticators ativos no mesmo firewall, cada um lidando com um tipo de autenticação específico.

3

O que o método authenticate() de um custom authenticator deve retornar em caso de sucesso?

Resposta

O método authenticate() deve retornar um objeto Passport contendo um UserBadge (identificador do usuário) e credentials badges. O Passport também pode conter badges adicionais como CsrfTokenBadge ou RememberMeBadge. O Symfony usa então esse Passport para criar o token de autenticação e carregar o usuário através do UserProvider.

4

Como definir um Voter personalizado para controlar o acesso a um recurso específico?

5

Qual estratégia do AccessDecisionManager é recomendada para aplicações que exigem segurança rigorosa?

+19 perguntas de entrevista

Domine Symfony para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis