@EnableWebSecurity —> Включает поддержку веб-безопасности Spring Security и интеграцию с Spring MVC. Применяется к конфигурационному классу для активации безопасности.@EnableGlobalMethodSecurity / @EnableMethodSecurity (Spring Security 6+) —> Включает методный уровень безопасности (например, @PreAuthorize, @Secured). @EnableMethodSecurity — новая версия для Spring Security 6+.@PreAuthorize("expression") —> Проверяет выражение SpEL до выполнения метода. Часто используется для ролевого доступа, например: @PreAuthorize("hasRole('ADMIN')").@PostAuthorize("expression") —> Похожа на @PreAuthorize, но проверка происходит после выполнения метода. Полезно для фильтрации возвращаемых данных.@Secured("ROLE_NAME") —> Разрешает доступ к методу только при наличии указанной роли. Менее гибкая, чем @PreAuthorize@RolesAllowed("ROLE_NAME") —> Аннотация из JSR-250, ограничивает доступ по ролям. Требует включённой опции @EnableMethodSecurity(jsr250Enabled = true)@AuthenticationPrincipal —> Внедряет текущего аутентифицированного пользователя (Principal или объект UserDetails) в контроллер или метод.@WithMockUser —> Используется в тестах для эмуляции аутентифицированного пользователя с заданными ролями.@PermitAll —> Разрешает доступ всем пользователям, включая неаутентифицированных. Требует поддержки JSR-250.@DenyAll —> Запрещает доступ всем, включая аутентифицированных пользователей. Также входит в JSR-250.👉 Java Portal