Example usage for org.apache.shiro.web.mgt CookieRememberMeManager setCipherKey

List of usage examples for org.apache.shiro.web.mgt CookieRememberMeManager setCipherKey

Introduction

In this page you can find the example usage for org.apache.shiro.web.mgt CookieRememberMeManager setCipherKey.

Prototype

public void setCipherKey(byte[] cipherKey) 

Source Link

Document

Convenience method that sets the cipher key to use for both encryption and decryption.

Usage

From source file:com.cuisongliu.springboot.shiro.autoconfig.ShiroAutoConfig.java

License:Open Source License

/**
 * ?/* w w  w  .  j a  v  a  2  s  .  co m*/
 */
@Bean
public DefaultWebSecurityManager securityManager(SessionManager sessionManager, ShiroAbstractRealm realm) {
    DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
    securityManager.setRealm(realm);

    RedisManager redisManager = new RedisManager(redisHost, redisPort, redisTimeout, redisPassword);
    ShiroRedisCacheManager shiroRedisCacheManager = new ShiroRedisCacheManager(redisManager,
            springShiroProperties.getRedisCacheKey());

    securityManager.setCacheManager(shiroRedisCacheManager);

    {
        if (springShiroProperties.getEnableRememberMe()) {
            //SimpleCookie 
            SimpleCookie rememberMeCookie = new SimpleCookie(springShiroProperties.getRememberMeCookieName());
            rememberMeCookie.setHttpOnly(springShiroProperties.getRememberMeCookieHttpOnly());
            //7
            rememberMeCookie.setMaxAge(springShiroProperties.getRememberMeCookieDays() * 24 * 60 * 60);
            //rememberMe?, cipherKey??{@code Base64Test.java}
            CookieRememberMeManager rememberMeManager = new CookieRememberMeManager();
            rememberMeManager.setCipherKey(Base64.decode(springShiroProperties.getRememberMeKey()));
            rememberMeManager.setCookie(rememberMeCookie);
            //rememberMe
            securityManager.setRememberMeManager(rememberMeManager);
        }
    }

    securityManager.setSessionManager(sessionManager);
    return securityManager;
}