Shiro的Remember Me

来源:互联网 发布:it天空 编辑:程序博客网 时间:2024/06/05 16:03

Shiro提供了Remember服务,AuthenticationToken需要实现org.apache.shiro.authc.RememberMeAuthenticationToken接口(UsernamePasswordtoken已经提供了这个接口)。

这个接口提供了一个方法 :

boolean isRememberMe();

如果这个方法设置为true,Shiro 将会在整个会话中记住终端用户的身份ID。

UsernamePasswordToken token = new UsernamePasswordToken(username, password);

token.setRememberMe(true);


表单提交方式

Web应用中,默认的认证过滤器是FormAuthenticationFilter。它读取一个名为‘rememberMe’表单值来支持 Remember Me 服务,此值是布尔型。比如在你的页面里有一个名为‘rememberMe’的checkbox

<form action="login.action",method="post">

   Username: <input type="text" name="username"/> <br/>

   Password: <input type="password" name="password"/>

   <input type="checkbox" name="rememberMe" value="true"/>Remember Me 

</form>

默认的FormAuthenticationFilter会寻找请求参数名为usernamepasswordrememberMe的值。如果你的参数名与这些默认值不同,你可以在FormAuthenticationFilter中进行配置




1 0
原创粉丝点击