美文网首页
Shiro配置RememberMe

Shiro配置RememberMe

作者: 我是邱邱 | 来源:发表于2018-09-12 18:24 被阅读0次

1.在spring-bean.xml中添加RememberMe的配置

<!-- remenberMe配置 -->
    <bean id="rememberMeCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
        <constructor-arg value="rememberMe" />
        <property name="httpOnly" value="true" />
        <!-- 默认记住7天(单位:秒) -->
        <property name="maxAge" value="604800" />
    </bean>
    <!-- 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.需要在安全管理器中引入rememberMe管理器

<!-- 安全管理器 -->
    <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">  
      <property name="realm" ref="myRealm"/>  
      <property name="cacheManager" ref="cacheManager" />
      <property name="rememberMeManager" ref="rememberMeManager" />
    </bean>

3.需要在Shiro过滤器中设置

<!-- 如果使用/**=authc,RememberMe将不起作用 -->
                /**=user

<!-- Shiro过滤器 -->
    <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">  
        <!-- Shiro的核心安全接口,这个属性是必须的 -->  
        <property name="securityManager" ref="securityManager"/>
        <!-- 身份认证失败,则跳转到登录页面的配置 -->  
        <property name="loginUrl" value="/login.jsp"/>
        <!-- 权限认证失败,则跳转到指定页面 -->  
        <property name="unauthorizedUrl" value="/unauthorized.jsp"/>  
        <!-- Shiro连接约束配置,即过滤链的定义 -->  
        <property name="filterChainDefinitions">  
            <value>  
                /login=anon
                /login.jsp=anon
                /js/**=anon
                
                <!-- 如果使用/**=authc,RememberMe将不起作用 -->
                /**=user
            </value>  
        </property>
    </bean>

4.在前端设置

<!--如果勾选上,将会发送一个name为"rememberMe" 值为"true"  -->
<input type="checkbox" name="rememberMe" value="true"/>

5.在后台登录界面设置

//      如果只有配置而没有这个,RememberMe不起作用
        token.setRememberMe(true);

相关文章

网友评论

      本文标题:Shiro配置RememberMe

      本文链接:https://www.haomeiwen.com/subject/knkbgftx.html