AuthorityUtils
AuthorityUtils
此类一般用于UserDetailsService的实现类中的loadUserByUsername方法
此工具类一共有三个方法:
commaSeparatedStringToAuthorityList
作用为给user账户添加一个或多个权限,用逗号分隔,底层调用的是createAuthorityList方法,唯一区别在于此方法把所有的权限包含进一个字符串参数中,只不过用逗号分隔。
@Service
public class UserDetailsServiceImpl implements UserDetailsService{@AutowiredPasswordEncoder passwordEncoder;@Overridepublic UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {//比较用户名if("admin".equals(username)) {throw new UsernameNotFoundException("用户名不存在");}//比较密码String pass=passwordEncoder.encode("123");//加密return new User(username,pass,AuthorityUtils.commaSeparatedStringToAuthorityList("admin,normal"));}}
createAuthorityList
将权限转换为List,如
@Service
public class UserDetailsServiceImpl implements UserDetailsService{@AutowiredPasswordEncoder passwordEncoder;@Overridepublic UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {//比较用户名if("admin".equals(username)) {throw new UsernameNotFoundException("用户名不存在");}//比较密码String pass=passwordEncoder.encode("123");//加密List<GrantedAuthority> list=AuthorityUtils.createAuthorityList("admin","normal");//一个权限一个参数return new User(username,pass,list);}
}
authorityListToSet
将GrantedAuthority对象的数组转换为Set
List<GrantedAuthority> list=AuthorityUtils.createAuthorityList("admin","normal");Set<String> set=AuthorityUtils.authorityListToSet(list);
AuthorityUtils相关推荐
- Spring Security的RBAC数据模型嵌入
1.简介 基于角色的权限访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注.在RBAC中,权限与角色相关联,用户通过成 ...
- Spring Security 之集群Session配置
1. 新建Maven项目 cluster-session 2. pom.xml <project xmlns="http://maven.apache.org/POM/4.0. ...
- java oauth sso 源码_基于Spring Security Oauth2的SSO单点登录+JWT权限控制实践
概 述 在前文<基于Spring Security和 JWT的权限系统设计>之中已经讨论过基于 Spring Security和 JWT的权限系统用法和实践,本文则进一步实践一下基于 Sp ...
- Spring Security 源码分析:Spring Security 授权过程
Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring I ...
- SpringBoot 2 + Spring Security 5 + JWT 的单页应用 Restful 解决方案
此前我已经写过一篇类似的教程,但那时候使用了投机的方法,没有尊重 Spring Security 的官方设计,自己并不感到满意.这段时间比较空,故重新研究了一遍. 特性 使用 JWT 进行鉴权,支持 ...
- 大白话详解Spring Security认证流程
前言 Spring Seuciry相关的内容看了实在是太多了,但总觉得还是理解地不够巩固,还是需要靠知识输出做巩固. 相关版本: java: jdk 8 spring-boot: 2.1.6.RELE ...
- 8.Spring Security 权限控制
Spring Security权限控制可以配合授权注解使用,具体有哪些注解可以参考Spring-Security保护方法.接着上一节,要开启这些注解,只需要在Spring Security配置文件中添 ...
- 3.Spring Security 自定义用户认证
Spring Security自定义用户认证 自定义认证过程 自定义认证的过程需要实现Spring Security提供的UserDetailService接口,该接口只有一个抽象方法loadUser ...
- Security-OAuth2.0 密码模式之客户端实现
我的OAuth2.0 客户端项目目录 pom 的配置 <?xml version="1.0" encoding="UTF-8"?> <proj ...
最新文章
- Webcast 系列课程 NET最全,最权威的学习资源
- Linux 查找redis进程命令:ps -ef | grep redis
- 计算机开题报告参考文献,开题报告中参考文献.docx
- Android之Handler,举例说明如何更新UI
- 苹果macOS 13 Ventura 5K原生动态壁纸
- 项目中GIT的红色和绿色的标识不显示
- 任正非:人感知到自己的渺小,行为才开始伟大
- 大学英语综合教程四 Unit 1 课文内容英译中 中英翻译
- C# Predefined type 'System.Object' is not defined or imported
- 黑苹果开启——HiDPI 技术
- 谷歌地图开发:地理编码和反地理编码
- 《CTF竞赛权威指南》|Off-By-One
- 小波变换比傅里叶变换好在哪里_小波变换与傅里叶变换详解——代码下载——非平稳信号与平稳信号的滤波效果对比
- Windows11来了,第一个适用于Windows 11的Insider Preview
- Springboot集成七牛云,实现图片上传功能
- cmd批处理剪切_Windows命令行bat/cmd脚本,文件批处理教程
- 淘宝开放平台API接口,接入方案如下
- 【推荐系统】评估指标总结
- JavaScript鼠标点击事件
- 课程作业——基于数据挖掘算法和技术指标预测股票涨跌
热门文章
- P3064 [USACO12DEC]伊斯坦布尔的帮派 (模拟)
- python数据分析案例-银行用户忠诚度分析
- 什么是PA,与LNA的区别是什么
- 密码学中常用的人物角色名称--Alice, Bob,etc
- lol提示游戏环境异常重启计算机,msoffice系统工具教程lol游戏环境异常请重启机器该怎么办...
- wow.js怎么使用这个插件
- 【0x00】python base str操作
- 关于 数据结构 与算法的复杂度
- VP9如何给Twitch的电竞直播带来价值?
- 安徽省2018工程计价电子版_2018版安徽省建设工程计价依据.doc