security服务器端方法级基础权限控制

本文介绍如何在Spring Security中实现方法级权限控制,通过使用注解如@RolesAllowed和@PermitAll来限定不同角色对特定方法的访问权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文只有最基础的 服务器端方法级权限控制

1.导入jar包
<dependency>
     <groupId>javax.annotation</groupId>
     <artifactId>jsr250-api</artifactId>
     <version>1.0</version>
 </dependency>
2.在spring-security.xml里配置
<!--开启spring-security注解的配置文件-->
    <security:global-method-security jsr250-annotations="enabled"/>

3.在Controller层的方法上注解----

 	@RequestMapping("/user/save")
 	//------------------------下面是重点---------------------------------
    @PermitAll
    //------------------------上面是重点---------------------------------
    public String getAllUsers(UserInfo userInfo){
        userService.saveUser(userInfo);
        return "user-list";
    }
    @RequestMapping("/user/addRoleToUser/{userId}")
    //------------------------下面是重点---------------------------------
    @RolesAllowed("ROLE_ADMIN")
    //------------------------上面是重点---------------------------------
    public String addRoleToUser(@PathVariable String userId, Model model){
        UserInfo userInfo = userService.findById(userId);
        model.addAttribute("user",userInfo);
        List<Role> list = roleService.findWithoutRolesByUserId(userId);
        model.addAttribute("roleList",list);
        return "user-role-add";
    }
各种注解及意义

@RolesAllowed:表示具有定义的角色时才可以访问对应的方法

@PermitAll:允许所有角色进行访问,等于不进行权限控制

@DenyAll:此方法跟@PermitAll正好相反,表示什么角色都不能进行访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值