shiro执行流程

1.通过ini配置文件创建securityManager

2.调用subject.login方法主体提交认证

3.securityManager进行认证,securityManager最终由ModularRealmAuthenticator进行认证

4.ModularRealmAuthenticator调用IniRealm去Ini配置文件中查询用户信息

5.ModularRealm根据输入的token(UsernamePasswordToken)从shiro-first.ini文件中查询用户信息,根据用户账号查询用户信息(用户和密码):

如果查询到用户信息,就给ModularRealmAuthenticator返回用户信息(账号密码)

如果没有查询到信息,就给ModularRealmAuthenticator返回Null

6.ModularRealmAuthenticator接收IniRealm返回 Authentication认证信息

如果返回的认证信息是Null,就抛出用户找不到异常

如果返回的认证信息不是Null(说明IniRealm找到了用户),对IniRealm的用户密码和token中的密码进行对比,如果不一致,抛出一个凭证错误异常

猜你喜欢

转载自blog.csdn.net/mr_yarnell/article/details/74930380