# Sicurezza avanzata (Symfony) > Custom authenticators, voters, security expressions, protezione CSRF, prevenzione XSS, rate limiting, hardening in produzione, configurazioni errate di JWT/OAuth2 - 22 domande da colloquio - Senior - [Domande da colloquio: Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio.md) ## 1. Quale interfaccia deve implementare un custom authenticator in Symfony 6+? **Risposta** In Symfony 6+, i custom authenticator devono implementare AuthenticatorInterface del componente Security HTTP. Questa interfaccia definisce i metodi supports(), authenticate(), onAuthenticationSuccess(), onAuthenticationFailure() e, opzionalmente, createToken(). Sostituisce il vecchio sistema Guard utilizzato in Symfony 4/5. ## 2. Qual è il ruolo del metodo supports() in un custom authenticator? **Risposta** Il metodo supports() determina se l'authenticator deve gestire la richiesta corrente. Riceve la Request e restituisce un booleano. Se true, verranno chiamati il metodo authenticate() e poi onAuthenticationSuccess() o onAuthenticationFailure(). Questo consente di avere più authenticator attivi sullo stesso firewall, ognuno dei quali gestisce un tipo di autenticazione specifico. ## 3. Cosa deve restituire il metodo authenticate() di un custom authenticator in caso di successo? **Risposta** Il metodo authenticate() deve restituire un oggetto Passport contenente un UserBadge (identificatore dell'utente) e credentials badge. Il Passport può contenere anche badge aggiuntivi come CsrfTokenBadge o RememberMeBadge. Symfony usa quindi questo Passport per creare il token di autenticazione e caricare l'utente tramite lo UserProvider. ## Altre 19 domande disponibili - Come definire un Voter personalizzato per controllare l'accesso a una risorsa specifica? - Quale strategia dell'AccessDecisionManager è consigliata per le applicazioni che richiedono una sicurezza rigorosa? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio Symfony - [PHP Moderno (8.1+)](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/php-modern-features.md): 20 domande, Junior - [Fondamenti di Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/symfony-basics.md): 25 domande, Junior - [Routing & Controllers](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/routing-controllers.md): 20 domande, Junior - [Twig & Templates](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/twig-templates.md): 20 domande, Junior - [Fondamenti di Doctrine ORM](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/doctrine-orm-basics.md): 25 domande, Junior - [Form Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/forms.md): 22 domande, Junior - [Validazione dei dati](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/validation.md): 18 domande, Junior - [Dependency Injection & Services](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/dependency-injection.md): 24 domande, Mid-Level - [Security & Authentication](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/security-authentication.md): 26 domande, Mid-Level - [Doctrine avanzato](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/doctrine-advanced.md): 24 domande, Mid-Level - [API Platform](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/api-platform.md): 22 domande, Mid-Level - [Serializer Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/serializer.md): 20 domande, Mid-Level - [Events & Event Subscribers](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/events-subscribers.md): 20 domande, Mid-Level - [Console & Commands](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/console-commands.md): 18 domande, Mid-Level - [Messenger Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/messenger.md): 22 domande, Mid-Level - [HTTP Client](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/http-client.md): 18 domande, Mid-Level - [Cache e prestazioni](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/cache.md): 20 domande, Mid-Level - [Workflow Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/workflow.md): 18 domande, Mid-Level - [Testing Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/testing.md): 22 domande, Mid-Level - [Mailer Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/mailer.md): 16 domande, Mid-Level - [Traduzioni e i18n](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/translations.md): 16 domande, Mid-Level - [EasyAdmin Bundle](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/easyadmin.md): 18 domande, Mid-Level - [Architettura Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/architecture-patterns.md): 24 domande, Senior - [Performance e ottimizzazione](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Bundle Personalizzati](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/custom-bundles.md): 20 domande, Senior - [Microservices con Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/microservices.md): 22 domande, Senior - [Real-time & WebSockets](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/real-time.md): 18 domande, Senior - [Deployment & DevOps](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/deployment-devops.md): 20 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/symfony/domande-colloquio/security-advanced