概述

  

认证和记住我

  

建议

  

身份验证相关

  

实现

如果要自己做RememeberMe,需要在登录之前创建Token:UsernamePasswordToken(用户名,密码,是否记住我),且调用

UsernamePasswordToken 的 : token.setRememeberMe(true);

@RequestMapping("/login")
public String login(@RequestParam("userName") String userName,
@RequestParam("password") String password) { Subject currentUser = SecurityUtils.getSubject(); if (!currentUser.isAuthenticated()) {
UsernamePasswordToken token = new UsernamePasswordToken(userName,
password);
token.setRememberMe(true
);
try {
currentUser.login(token);
} catch (AuthenticationException e) {
System.out.println("登录失败:" + e.getMessage());
}
}
return "redirect:/list.jsp"; }

RememeberMe 实际上是由 rememeberMeManager进行配置的 rememeberMeManager是SecurityManager的一个属性,

所以可以在 applicationContext的 SecurityManager 中配置 rememeberMeManager

<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
<property name="cacheManager" ref="cacheManager"/>
<!-- Single realm app. If you have multiple realms, use the 'realms' property instead. -->
<!-- 配置session的管理方式 -->
<!-- <property name="sessionMode" value="native"/> -->
<!-- <property name="realm" ref="jdbcRealm"/> -->
<!-- 配置多个Realm -->
<property name="authenticator" ref="authenticator"></property> <property name="realms">
<list>
<ref bean="jdbcRealm"/>
<ref bean="secondRealm"/>
</list>
</property>
<!-- 将cookie的作用时间配置为10s -->
<property name="rememberMeManager.cookie.maxAge" value="10"></property>
</bean>

可以看到 cookie的maxAge已被修改为 10s

当然 rememeberMeManager也可以单独配置

最新文章

  1. Selenium+python 配置
  2. NOIP2001 一元三次方程求解[导数+牛顿迭代法]
  3. fzu2188 状压dp
  4. 记一次VNC远程连接Linux问题解决记录(5900端口测试、KDE桌面安装)
  5. leetcode-Single Number III 找独数
  6. 【转】C#中没有id 没有name C#怎么点击按钮
  7. ELK之nginx日志分析图表创建
  8. poj 2432 Around the world bfs+哈希
  9. Entity Framework 6.1-Code First【转】
  10. Python -- machine learning, neural network -- PyBrain 机器学习 神经网络
  11. Web中的积累:外观模式 Facade
  12. 解决Postgres无法连接的问题
  13. http://ctf.bugku.com/challenges#%E9%80%86%E5%90%91%E5%85%A5%E9%97%A8:bugku--逆向入门
  14. downLoad
  15. MyBatis 源码分析 - 插件机制
  16. MVC使用Redis实现分布式锁
  17. Go语言之高级篇beego框架之请求数据处理
  18. [pat]1045 Favorite Color Stripe
  19. atrous convolution
  20. 3. CNN卷积网络-反向更新

热门文章

  1. 每天一个Linux命令(62)rcp命令
  2. java 断言工具类
  3. 主攻ASP.NET MVC4.0之重生:发邮箱激活验证
  4. 基于Visual c++ 2012的php扩展开发 - HelloWord!
  5. MySQL备份账号权限
  6. Linux文件系统十问---深入理解文件存储方式(rhel6.5,EXT4)【转】
  7. html页面转JSP之后样式变化的问题
  8. nodejs 中module.exports 和 exports 区别详细介绍
  9. [kuangbin带你飞]专题十 匹配问题 一般图匹配
  10. js装饰者模式