shiro认证过程,怎样做才会走realm的认证方法

1、走realm的认证方法1:直接调用【SecurityUtils.getSubject().login(token)】方法

      可参考【https://blog.csdn.net/scscdslt/article/details/77801570】

2、走realm的认证方法2:有严格要求【参考http://www.cnblogs.com/yoohot/p/6085830.html】

  A、必需是POST提交,意味着只能通过页面(表单的POST)提交

    

  B、POST提交地址必需为loginUrl地址

  

  C、Post提交地址只能是一层【即只能是“/地址”,不能出现更多的“/”】

  D、过滤链中POST提交地址必需配制为authc【配制为必需认证】

    

  E、通过这几个限制条件,不调用【SecurityUtils.getSubject().login(token)】方法,一样会走realm的认证方法

-------------------------------------------测试注意事项-------------------------------------------

1、想让哪个地址直接放行,请在过滤链中设置anon:

  比如说login.jsp就必需直接放行才能访问的到【否则访问login.jsp会转向设置的loginUrl地址,当然也不会走realm认证方法】

  

2、根据realm认证方法的特点【1、认证成功直接进入成功页面,2、认证不成功走loginUrl地址】:

  所以,在loginUrl对应的action方法中设置跳转指向为【login.jsp】

    -》认证失败,此时虽然页面显示的内容是login.jsp的内容,但是显示地址却是loginUrl地址。

    -》此时login.jsp=anon也可以不用设置了【因为显示的是loginUrl地址】

  

猜你喜欢

转载自www.cnblogs.com/L-G-Y/p/10261967.html