首页> 文章> 详情

java编程spring security常用注解说明

教程分享 > Java教程 (5567) 2024-04-17 12:31:24
首先是启用方法级别的权限控制

@EnableGlobalMethodSecurity 开启Spring Security 全局方法安全
@EnableGlobalMethodSecurity 可以配置多个参数
prePostEnabled :决定Spring Security的前注解是否可用 [@PreAuthorize,@PostAuthorize,..] 
secureEnabled : 决定是否Spring Security的保障注解 [@Secured] 是否可用
jsr250Enabled :决定 JSR-250 annotations 注解[@RolesAllowed..] 是否可用.

1.@Secured
功能:
支持单一角色或者多个角色之间的任何一个角色,不支持spring EL表达式

2.@PreAuthorize 
注解适合进入方法前的权限验证, @PreAuthorize可以将登录用户的roles/permissions参数传到方法中。 
例子:
 @PreAuthorize("hasRole('ADMIN')")   拥有ADMIN角色权限才能访问
 @PreAuthorize("hasRole('ADMIN') AND hasRole('DBA')")  拥有ADMIN角色和DBA角色权限才能访问
 @PreAuthorize("hasAnyRole('ADMIN','DBA')") 拥有ADMIN或者DBA角色均可访问


3.@PostAuthorize
注解使用并不多,在方法执行后再进行权限验证。


@PreAuthorize / @PostAuthorize 注解更适合方法级的安全,也支持Spring 表达式语言,提供了基于表达式的访问控制。
https://www.leftso.com/article/177.html

相关文章
spring security常用注解@Secured、@PreAuthorize 、@PostAuthorize说明,Java编程,spring security
Java编程中spring security4是一个spring框架项目的一个安全方面的项目。主要用于用户认证,授权,角色认证
spring boot 入门之security oauth2 jwt完美整合例子,Java编程中spring boot框架+spring security框架+spring security o...
本文主要翻译spring官方的基于spring security框架的oauth2开发指南,spring,oauth2,spring框架,Java编程
Spring Security 配置多个Authentication Providers认证器
Java编程中Spring Boot整合RabbitMQ实现消息中间件RabbitMQ的使用
spring boot 2.0 security 5.0 整合,实现自定义表单登录。spring boot 2.0框架使用。
Java编程中spring boot项目如何获取spring容器applicationContext
使用OAuth2安全的Spring REST API,Secure Spring REST API using OAuth2(含demo代码下载)
1.概述本文继续使用spring boot 和Spring Security系列进行注册,并着重于如何正确实现角色和权限
解决spring security 整合到spring boot中,UserDetailsService接口的loadUserByUsername方法参数username输入为空问题。一  检查...
引言在这篇文章中,我们将讨论如何使用Spring Boot Security OAuth2保护REST API
java编程为啥会出现spring框架,为什么要有Spring?
Java编程之Spring Boot通过JMSTemplate 整合ActiveMQ