tgoop.com/Java_Iibrary/1443
Last Update:
Шпаргалка по аннотациям безопасности Spring Security@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
—> Используется в тестах для эмуляции аутентифицированного пользователя с заданными ролями.@PermitAl
l —> Разрешает доступ всем пользователям, включая неаутентифицированных. Требует поддержки JSR-250.@DenyAll
—> Запрещает доступ всем, включая аутентифицированных пользователей. Также входит в JSR-250.