0

我整天都在尝试找出或谷歌,如何salt在身份验证期间添加到我的哈希密码中,Spring 3 security并使其全部协同工作。没有盐它工作得很好。

    <!-- authentication from database -->
    <security:authentication-manager>
        <security:authentication-provider>
            <security:password-encoder hash='md5'/> 
            <security:jdbc-user-service
                data-source-ref='dataSource'

                users-by-username-query="
              select username,password, salt
              from users where username=?"

                authorities-by-username-query="
              select u.username, ur.authority from users u, user_roles ur 
              where u.user_id = ur.user_id and u.username =?  " />

        </security:authentication-provider>
    </security:authentication-manager>

如果我想创建加盐密码,只需user.setPassword(md5(somePassword+someSalt));感谢您的任何建议即可完成。

4

1 回答 1

1

Spring security 使用以下模式使用盐进行密码编码:

 md5(password+"{"+salt+"}")

但是,我会使用 sha 而不是 md5。

于 2013-08-21T22:26:57.767 回答