zoukankan      html  css  js  c++  java
  • Shiro中的Remember me设置

    1. 在Spring的相关配置文件中加入如下Remember me管理器配置:

        <!-- rememberMe管理器 -->
        <bean id="rememberMeManager"
              class="org.apache.shiro.web.mgt.CookieRememberMeManager">
            <property name="cipherKey" value="#{T(org.apache.shiro.codec.Base64).decode('4AvVhmFLUs0KTA3Kprsdag==')}"/>
            <property name="cookie" ref="rememberMeCookie"/>
        </bean>
    

    2.设置Cookies会话模板

        <!-- 会话Cookie模板 -->
        <bean id="sessionIdCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
            <constructor-arg value="sid"/>
            <property name="httpOnly" value="true"/>
            <property name="maxAge" value="-1"/>
        </bean>
    

    3.remember me cookies配置

        <bean id="rememberMeCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
            <constructor-arg value="rememberMe"/>
            <property name="httpOnly" value="true"/>
            <property name="maxAge" value="2592000"/><!-- 30天 -->
        </bean>
    

    4.securityManager定义RememberMe的管理器

        <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
            <property name="realm" ref="userRealm"/>
            <!-- 定义RememberMe的管理器 -->
            <property name="rememberMeManager" ref="rememberMeManager"/>
        </bean>
    

    5.在html代码中加入一个checkbox框

    <input type="checkbox" name="rememberMe">下次自动登录
    

    6.在控制层添加rememberMe参数传递,加了请忽略,并将参数传递到UsernamePasswordToken中

    UsernamePasswordToken token = new UsernamePasswordToken(username, password, rememberMe);
    

    7.测试该方式是否可用即可

      

      

      

  • 相关阅读:
    STM32 时钟配置分析
    STM32 开发板资源梳理
    STM32 摄像头实验OV2640
    STM32 TFT液晶屏与FSMC
    STM32 开发板电源与供电方式
    视觉里程计07 Qt的一些bug修改记录
    解决wireshark检测不到网卡的问题
    gdb 脚本调试
    [转] GCC 中的编译器堆栈保护技术
    使用gdbserver远程调试
  • 原文地址:https://www.cnblogs.com/lonecloud/p/9111761.html
Copyright © 2011-2022 走看看