认证流程
1、获取当前的Subject,调用SecurityUtils.getSubject();
2、测试当前用户是否已经认证,即是否已经登录。调用Subject的isAuthenticaed()
3、若没有被认证,则把用户名和密码封装为 UsernamePasswordToken对象
1)创建一个表单页面
2)把请求提交到SpringMVC 的Handler
3)获取用户名和密码
4、执行登陆:调用Subject的login(AuthenticationToken token)方法
5、自定义Realm的方法,从数据库中获取对应的记录,返回给Shiro。
1)实际上需要继承org.apache.shiro.realm.AuthenticatingRealm类
2)实现doGetAuthenticationInfo(AuthenticationToken )方法
6、由Shiro完成密码的对比。