Spring-security认证过程
1.请求会进入AuthticationFilter, AuthticationFilter的作用在于验证系统设置受限资源的过滤器。
2.第二步,跳转到UsernamePasswordAuthticationToken进行账号密码验证,如:UsernamePasswordauthtication(authtication),UsernamePasswordAuthticationToken的作用在于验证请求,生成authtication。
第三步,把authtication交给AuthticationManager管理,而AuthticationProvider是被AuthticationManager所管理的,而AuthticationProvider是用于管理认证方式的,接着会通过加密PasswordEncoder。
第四步,而AuthticationProvider是需要用户的信息以及UserDetailsService的认证实现方式的,而UserDetailsService是被UserDetail继承的,UserDetail是封装了User用户信息,所以大概流程就是:User->UserDetail->UserDetailsService
第五步,把User信息封装进AuthticationProvider,再进入AuthticationManager中的ProviderManager然后再次返回AuthnticationFilter中。
AuthticationFilter中包含了SecurityContext,而SerurityContext中又存在authntication,而此时的authntication存放着用户的信息,principal和Authorities。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)