版权声明:www.hsboy.cn [email protected] https://blog.csdn.net/oHongShu1/article/details/88688767
1.配置rememberMeManager结点
rememberMeManager使用CookieRememberMeManager作为实现类
<bean id="rememberMeManager" class="org.apache.shiro.web.mgt.CookieRememberMeManager">
<property name="cookie" ref="simpleCookie"></property>
<property name="cipherKey" value="#{T(org.apache.shiro.codec.Base64).decode('6ZmI6I2j5Y+R5aSn5ZOlAA==')}"/>
</bean>
2.配置simpleCookie
<bean id="simpleCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
<property name="httpOnly" value="true"></property>
<!-- 存活时间 -->
<property name="maxAge" value="#{60*60*24*7}"></property>
<property name="name" value="rememberMe"></property>
</bean>
3.在securityManager中添加rememberMeManager
<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
<!-- Single realm app. If you have multiple realms, use the 'realms' property instead. -->
<property name="realm" ref="myRealm"/>
<!-- By default the servlet container sessions will be used. Uncomment this line
to use shiro's native sessions (see the JavaDoc for more): -->
<!-- <property name="sessionMode" value="native"/> -->
<property name="rememberMeManager" ref="rememberMeManager"></property>
</bean>
4.配置Realm允许存储(storedCredentialsHexEncoded)
<bean id="myRealm" class="top.weweb.hawk.shiro.MyRealm">
<property name="credentialsMatcher">
<bean class="org.apache.shiro.authc.credential.HashedCredentialsMatcher">
<property name="hashAlgorithmName" value="MD5"></property>
<property name="storedCredentialsHexEncoded" value="true"></property>
</bean>
</property>
</bean>