内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

核心组件之UserDetailService

2018-08-04 17:47 出处:清屏网 人气: 评论(0

简介:

  • UserDetails => Spring Security基础接口
  • Authentication => 认证对象,可通过SecurityContext获得
  • principal => 用户信息对象,是一个Object,通常可转为UserDetails

UserDetails

用于表示一个principal,但是一般情况下是作为(你所使用的用户数据库)和(Spring Security 的安全上下文需要保留的信息)之间的适配器。

什么时候提供UserDetails对象?如何做到?

有一个特殊的接口 => UserDetailService

这个接口只有一个方法 => loadUserByUsername(String username)

何处用到?

当认证成功后,UserDetails将被用户构建Authentication对象,存储在SecurityContextHolder中。

UserDetails既然是一个接口,那它有哪些实现类?

  • InMemoryDaoImpl => 存储于内存
  • JdbcDaoImpl => 存储于数据库(磁盘)
  • 或自定义

误解 => UserDetailService 负责认证用户

实际上:UserDetailService只单纯地负责存取用户信息,除了给框架内的其他组件提供数据外没有其他功能。而认证过程是由AuthenticationManager来完成的。( 大多数情况下,可以通过实现AuthenticationProvider接口来自定义认证过程

分享给小伙伴们:
本文标签: UserDetailSe

相关文章

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

CopyRight © 2015-2016 QingPingShan.com , All Rights Reserved.

清屏网 版权所有 豫ICP备15026204号