码迷,mamicode.com
首页 > 其他好文 > 详细

每天学点Shiro-多realm

时间:2017-09-30 21:01:17      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:uri   exception   int   hash   turn   code   count   eal   blog   

1. 新建第二个realm,加密算法改为SHA1

protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken)
            throws AuthenticationException {

        System.out.println("=========>SecondRealm doGetAuthenticationInfo");
        UsernamePasswordToken token = (UsernamePasswordToken) authenticationToken;
        String username = token.getUsername() ;

        if("unknown".equals(username)){
            throw new UnknownAccountException("用户名不存在") ;
        }

        Object principal = username ;
        Object credentials= "3416bb24c2d3e88cc79e261ec63c1c324e6614b9" ;
        ByteSource credentialsSalt = ByteSource.Util.bytes(username);
        String realmName = getName() ;

        AuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(principal,credentials,credentialsSalt,realmName) ;

        return authenticationInfo;
    }

 

 2. spring-context-shiro.xml中对secondRealm进行配置

     2.1 声明SecondRealm

<bean id="secondRealm" class="com.pawn.shiro.realm.SecondRealm">
        <property name="credentialsMatcher">
            <bean class="org.apache.shiro.authc.credential.HashedCredentialsMatcher">
                <property name="hashAlgorithmName" value="SHA1"/>
                <property name="hashIterations" value="1"/>
            </bean>
        </property>
    </bean>

 

    2.2 SecurityManager进行多Realm的配置

<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
        <property name="cacheManager" ref="cacheManager"/>
        <property name="authenticator">
            <bean class="org.apache.shiro.authc.pam.ModularRealmAuthenticator">
                <property name="realms">
                    <list>
                        <ref bean="jdbcRealm"/>
                        <ref bean="secondRealm"/>
                    </list>
                </property>
            </bean>
        </property>
    </bean>

 

每天学点Shiro-多realm

标签:uri   exception   int   hash   turn   code   count   eal   blog   

原文地址:http://www.cnblogs.com/xpawn/p/7616040.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!