首页 > 其他分享 >Spring security 3中关于方法级的权限限制

Spring security 3中关于方法级的权限限制

时间:2022-12-02 10:34:18浏览次数:49  
标签:PreAuthorize Spring sessionFactory employee security 权限 方法


Spring security 3中关于方法级的权限控制有两个方法

1)使用注解 @PreAuthorize 和 @PostAuthorize,要先在配置文件中启用:

<global-method-security secured-annotations="enabled" />

然后使用方法为:

@Repository
public class EmployeeDaoImpl implements EmployeeDAO {

@Autowired
private SessionFactory sessionFactory;

@PreAuthorize("hasRole('ROLE_ADMIN')")
@Override
public void addEmployee(EmployeeEntity employee) {
//System.out.println(((User)SecurityContextHolder.getContext().getAuthentication().getPrincipal()).getAuthorities());
this.sessionFactory.getCurrentSession().save(employee);
}



2) 使用XML灵活配置,配置i文件中如下:


<global-method-security>
<protect-pointcut expression="execution(* com.howtodoinjava.service.*Impl.add*(..))" access="ROLE_USER"/>
<protect-pointcut expression="execution(* com.howtodoinjava.service.*Impl.delete*(..))" access="ROLE_ADMIN"/>
</global-method-security>

标签:PreAuthorize,Spring,sessionFactory,employee,security,权限,方法
From: https://blog.51cto.com/u_14230175/5905576

相关文章

  • (转)Spring中@Autowired注解、@Resource注解的区别
    Spring不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource、@PostConstruct以及@PreDestroy。@Resource的......
  • springboot 加入websocket后,ServerEndpointExporter配置不识别-解决
    1.背景springboot加入websocket,需要配置ServerEndpointExporter的bean,发现没法识别2.原因springboot内置了tomcat,内置的tomcat与websocket不兼容,因此需要将-start-w......
  • springMVC
    在学习springMVC框架时,我发现原来地址栏不能发送post请求,如下图  这是我直接在地址栏输入http://localhost:8080/springMVC/user/login出现的报错,大概意思就是不支持g......
  • spring cloud alibaba gateway 整合 jwt 实现鉴权
    最近在搭建阿里巴巴的微服务框架,这次是引入jwt实现鉴权,主要包括以下功能(1)登录。接收用户名,密码,校验密码是否正确,若正确则返回token(jwt生成),若错误返回提示信息。(2)请求网关......
  • springboot配置多个数据源
    前言,什么是数据源与数据库连接池:说SpringBoot的多数据源配置之前,我们先了解下DataSource。在java中,操作数据库有很多方式,在众多方式中除了JDBC外还有DataSource对象......
  • Vue3实现前端权限级别按钮控制
    编写permission.vue组件中的按钮设置为:增加、修改和删除三个按钮,为了让button按钮disabled时,可以让tooltip继续有效,在button外层加了个span。为了通过自定义指令中方便控......
  • Spring Boot整合log4j实战(一):排除自带依赖、日志重定向、测试类验证
    〇、参考资料1、springboot整合log4j全过程详解https://blog.csdn.net/m0_60845963/article/details/1233072322、SpringBoot全局排除spring-boot-starter-logging......
  • Springboot+freemaker+eureka+fegin实现多文件上传,完整demo
    可能一般用fegin实现文件上传的不多,但这也算是一个文件上传方式吧,如果用到了,可以考虑借鉴一下,直接上代码好了eurekapom.xml<?xmlversion="1.0"encoding="UTF-8"?><......
  • SpringBoot中如何访问静态资源
    Springboot中如何访问静态资源我们在使用SpringMVC框架时,静态资源会被拦截,所以我们需要添加额外配置过滤静态资源,让其不被拦截。那么在Springboot中怎么配置呢。一.传统SS......
  • SpringBoot中如何访问静态资源
    Springboot中如何访问静态资源我们在使用SpringMVC框架时,静态资源会被拦截,所以我们需要添加额外配置过滤静态资源,让其不被拦截。那么在Springboot中怎么配置呢。......