我刚接触Spring安全性并拥有我在Tomcat Server中部署的第三方war文件。 spring-security.xml正在控制对应用程序的访问。
<beans:beans profile="some.profile">
<authentication-manager>
<authentication-provider>
<user-service>
<user name="admin" password="admin" authorities="ROLE_USER" />
</user-service>
</authentication-provider>
</authentication-manager>
</beans:beans>
我想更改我在上述设置中执行的默认密码。但是我也希望加密这个xml中的密码,这样它就不会存储为纯文本。我用Google搜索了这个问题,但没有得到任何与此问题相匹配的答案。我也不想坚持使用DB,因为这只是一次。
答案 0 :(得分:1)
可以通过添加额外参数&#34;密码编码器&#34;来使用密码哈希。有一些在线密码哈希计算器,它可以用来检索哈希字符串(md5,bcrypt或不同的编码方法)md5加密的配置样本:
<authentication-manager>
<authentication-provider>
<user-service>
<user name="admin" password="b91cd1a54781790beaa2baf741fa6789" authorities="ROLE_USER" />
</user-service>
<password-encoder ref="passwordEncoder" />
</authentication-provider>
</authentication-manager>
<beans:bean class="org.springframework.security.authentication.encoding.Md5PasswordEncoder" id="passwordEncoder"/>