# Розширена автентифікація та авторизація (Spring Boot) > Розширена автентифікація, детальна авторизація з @PreAuthorize/@PostAuthorize, roles, permissions, SpEL - 30 питань зі співбесід - Senior - [Питання зі співбесід: Spring Boot](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy.md) ## 1. Яка основна роль інтерфейсу UserDetailsService у Spring Security? **Відповідь** UserDetailsService відповідає за завантаження інформації про користувача з джерела даних (база даних, LDAP тощо) під час автентифікації. Його метод loadUserByUsername() повертає об'єкт UserDetails, що містить username, password, roles та authorities. Потім Spring Security використовує цю інформацію для перевірки credentials і побудови SecurityContext. ## 2. Яка анотація вмикає безпеку на рівні методів у Spring Security 6+? **Відповідь** @EnableMethodSecurity — це сучасна анотація у Spring Security 6+, яка вмикає безпеку на рівні методів. Вона замінює стару @EnableGlobalMethodSecurity і за замовчуванням вмикає @PreAuthorize, @PostAuthorize та @Secured. Вона використовує конфігурацію на основі AOP-проксі для перехоплення викликів методів і перевірки авторизацій. ## 3. У який момент анотація @PreAuthorize перевіряє авторизації? **Відповідь** @PreAuthorize перевіряє авторизації ПЕРЕД виконанням методу. Якщо умова SpEL повертає false, виникає AccessDeniedException, і метод ніколи не виконується. Це запобігає доступу до неавторизованих ресурсів від самого початку. На противагу цьому, @PostAuthorize перевіряє після виконання, що корисно для фільтрації результатів залежно від користувача. ## Ще 27 доступних питань - Яка основна різниця між hasRole() та hasAuthority() у Spring Security? - Як реалізувати власний UserDetailsService, який завантажує користувачів із бази даних? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Spring Boot - [Spring Core - IoC & DI](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-core-ioc-di.md): 22 запитань, Junior - [Spring Boot Auto-Configuration](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-auto-configuration.md): 20 запитань, Junior - [Spring Boot Starters](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-starters.md): 18 запитань, Junior - [Application Properties & YAML](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/application-properties-yml.md): 16 запитань, Junior - [Логування за допомогою SLF4J та Logback](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/logging.md): 20 запитань, Junior - [Spring Boot DevTools](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-devtools.md): 15 запитань, Junior - [Spring MVC Basics](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-mvc-basics.md): 20 запитань, Mid-Level - [Spring REST Controllers](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-rest-controllers.md): 20 запитань, Mid-Level - [Request & Response Handling](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/request-response-handling.md): 20 запитань, Mid-Level - [Обробка винятків](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/exception-handling.md): 25 запитань, Mid-Level - [Bean Validation](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/bean-validation.md): 25 запитань, Mid-Level - [Основи Spring Data JPA](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-data-jpa-basics.md): 25 запитань, Mid-Level - [Сутності JPA та зв'язки](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/jpa-entities-relationships.md): 30 запитань, Mid-Level - [Запити JPA](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/jpa-queries.md): 30 запитань, Mid-Level - [Spring Data Repositories](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-data-repositories.md): 25 запитань, Mid-Level - [Основи Spring Security](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-security-basics.md): 25 запитань, Mid-Level - [Spring Boot Actuator](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-actuator.md): 20 запитань, Mid-Level - [Модульне тестування з JUnit та Mockito](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/testing-junit-mockito.md): 30 запитань, Mid-Level - [Тестування Spring Boot](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-testing.md): 30 запитань, Mid-Level - [Profiles та Environment](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/profiles-environment.md): 20 запитань, Mid-Level - [RestTemplate і WebClient](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/resttemplate-webclient.md): 24 запитань, Mid-Level - [Async і Scheduling](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/async-scheduling.md): 25 запитань, Mid-Level - [Кешування зі Spring](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/caching.md): 25 запитань, Mid-Level - [Spring WebFlux (Reactive)](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-webflux.md): 25 запитань, Mid-Level - [Транзакції Spring](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/transactions.md): 30 запитань, Senior - [JWT та stateless-безпека](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/jwt-stateless-security.md): 20 запитань, Senior - [OAuth2 та Authorization Server](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/oauth2-authorization-server.md): 20 запитань, Senior - [Spring Boot і Docker](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-docker.md): 19 запитань, Senior - [Microservices зі Spring](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/microservices-basics.md): 25 запитань, Senior - [Spring Cloud Config](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-cloud-config.md): 19 запитань, Senior - [Оптимізація продуктивності](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/performance-optimization.md): 30 запитань, Senior - [GraalVM Native Images](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/graalvm-native-images.md): 20 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/authentication-authorization