身份认证的流程图如下:
1.首先调用Subject.login(token)进行登录,其余自动委托给SecurityManager。
2.SecurityManager负责真正的身份验证逻辑,它会委托给Authenticator进行身份验证。
3.Authenticator才是真正的身份验证者,Shiro API中核心的身份认证入口点,此处可以自定义插入自己的实现。
4.Authenticator可能会委托给相应的AuthenticationStrategy进行多Realm身份验证,默认ModularRealmAuthenticator会调用AuthenticationStrategy进行多Realm身份验证。
5.Authenticator会把相应的token传入Realm,从Realm获取身份验证信息,如果没有返回/抛出异常表示身份验证失败了。此处可以配置多个Realm,将按照相应的顺序及策略进行访问。
Apache Shiro身份认证
最新推荐文章于 2021-06-15 23:54:10 发布