文档章节

JAVA-WBE——spring security 3.2 认证-学习笔记4

小手冰凉丶
 小手冰凉丶
发布于 2017/04/05 20:44
字数 207
阅读 12
收藏 0

自定义用户细节配置

<authentication-manager>
<authentication-provider user-service-ref="myUserDetailsService">
<!--  <user-service>
 <user name="yexianglei" authorities="USER" password="123456"/>
 <user name="admin" authorities="USER,ADMIN" password="admin"/>
 </user-service> -->
</authentication-provider>

</authentication-manager>

 注释掉原先写死的用户,角色

注入自定义的配置

<beans:bean id="myUserDetailsService" class="com.yinda.security.serviceImpl.MyUserDetailsServiceImpl">  </beans:bean>

自定义的java类:

public class MyUserDetailsServiceImpl implements UserDetailsService{
  
	public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
		// TODO Auto-generated method stub

        //中间可以关联你的数据,写你的逻辑
		Collection<GrantedAuthority> auths=new ArrayList<GrantedAuthority>();
		SimpleGrantedAuthority auth2 = new SimpleGrantedAuthority("ADMIN");   
        SimpleGrantedAuthority auth1 = new SimpleGrantedAuthority("USER");   
        if(username.equals("admin")){   
            auths=new ArrayList<GrantedAuthority>();   
            auths.add(auth1);  
            auths.add(auth2);        
        }       
        if(username.equals("yexianglei")){   
            auths=new ArrayList<GrantedAuthority>();             
            auths.add(auth2);        
        }   
           
                
        User user = new User(username, "admin", true, true, true, true, auths);  
          
        //以后还可以new a class derived from User class,为user存放更多有关这个user的信息。  
        //参考下文User定义,可以存放用户的更多属性。  
        //http://blog.csdn.net/ydj7501603/article/details/9049663  
        return user;    
	}

 

© 著作权归作者所有

共有 人打赏支持
小手冰凉丶
粉丝 3
博文 60
码字总数 17244
作品 0
合肥
程序员
spring安全框架Security(二)

好,我们往下看,接着就是应用我们实际项目里的自定义用户权限了 Java代码 security:authentication-manager security:authentication-provider user-service-ref="customUserDetailsServic...

尚浩宇
2015/06/24
0
0
Spring实战读书笔记(1)

Spring的根本使命是? 简化Java开发 为了降低Java开发的复杂性,Spring采取了哪4种关键策略? 1、基于POJO的轻量级和最小侵入性编程 2、通过依赖注入和面向接口实现松耦合 3、基于切面和惯例...

祥林会跟你远走高飞
2014/12/30
0
0
Spring Boot(1)——开发你的第一款Spring Boot应用(Edition1)

Spring Boot(1)——开发你的第一款Spring Boot应用(Edition1) 准备工作: java:java 8 或者 java 9; Spring框架:5.0.8.RELEASE或以上; Maven 3.2+ 或 Gradle 4。 开发步骤: im...

梁桦
08/11
0
0
01-Spring Security框架学习

[toc] 01-Spring Security框架学习 简介 Spring Security 是什么 Spring Security 为基于 Java EE 的企业应用提供综合的安全服务。尤其支持使用Spring Framework构建的项目,这是目前企业软件...

weir_will
08/03
0
0
《Spring Security3》第三章第四部分翻译(修改密码)

实现修改密码管理 现在我们将要对基于内存的UserDetailsService进行简单的扩展以使其支持用户修改密码。因为这个功能对用户名和密码存于数据库的场景更有用,所以基于o.s.s.core.userdetail...

小样
2012/03/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

配置Spring的注解支持

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 配置Spring的注解支持 以上也提到了使用注解来配...

凯哥学堂
28分钟前
0
0
关于Spring Aop存在的一点问题的思考

在本人前面的文章Spring Aop原理之切点表达式解析中讲解了Spring是如何解析切点表达式的,在分析源码的时候,出现了如下将要讲述的问题,我认为是不合理的,后来本人单纯使用aspectj进行试验...

爱宝贝丶
30分钟前
0
0
JavaScript 概述

JavaScript是面向Web的编程语言。绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器——基于桌面系统、游戏机、平板电脑和智能手机的浏览器——均包含了JavaScript解释器。这使得...

Mr_ET
今天
0
0
Java Run-Time Data Areas(Java运行时数据区/内存分配)

Java运行时数据区(内存分配) 本文转载官网 更多相关内容可查看官网 中文翻译可参考 2.5. Run-Time Data Areas The Java Virtual Machine defines various run-time data areas that are use...

lichuangnk
今天
0
0
docker learn :services docker-compose.yml

docker-compose.yml定义了服务的运行参数 version: "3" services: web: # replace username/repo:tag with your name and image details image: hub.c.163.com/dog948453219/friendlyhello d......

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部