按照用户信息放在不同地方,所以可以采用不同的方式经行
主要分为:
1.基于内存的用户储存
直接用configre(AuthenticationManagerBuilid auth)方法经行,withUser和password,role都是可选的;
withUser(user)会在内存中寻找user的用户,Password也一样。role是授予其的角色。
2.基于数据库的认证
3.基于LDAP经行认证
(2.3目前没用...稍后补充)
4.配置自定义的用户服务
它是不过问数据来源,无论从哪来都行
步骤:
1.自定义UserDetailsService接口,并定义loadUserByUsername,用此方法返回一个USerDetails对象
2.实现这个接口,接受一个对象,不关心这个用户数据来源。实现loadUsername
3.在configre(AuthenticationManagerBuilder auth)中,配置一个用户存储