gpt4 book ai didi

java - Tomcat 6 - 如何配置 Digest SHA-256

转载 作者:行者123 更新时间:2023-11-29 00:35:46 26 4
gpt4 key购买 nike

我正在使用 Tomcat 6,目前在 MySql 数据库中使用表单例份验证作为明文密码。我已经在密码中添加了加密以在 SHA-256 中散列密码并且它似乎有效但是当我尝试使用 server.xml 中的 digest="SHA-256"和 digestEncoding="base64"通过 Tomcat 6 进行身份验证时,它不会验证。如果我从数据库中复制密码并将其输入密码字段,我就可以验证我的用户。

如何让 Tomcat 允许我使用普通密码对用户进行身份验证,但在 MySql 中存储哈希密码?

这是我添加到我的应用程序中的哈希代码:

    MessageDigest messageDigest = MessageDigest.getInstance("SHA-256");
byte bin[] = messageDigest.digest(password.getBytes("UTF-8"));
return Base64.encodeBase64String(bin);

最佳答案

这个问题的答案其实很简单——创建一个自定义的 Tomcat 领域。领域是执行实际身份验证的部分,如果您想针对您的数据库进行测试(尤其是加密或散列),领域身份验证方法是您必须覆盖的部分。

参见 http://www.christianschenk.org/blog/setup-your-own-tomcat-security-realm/

关于java - Tomcat 6 - 如何配置 Digest SHA-256,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14367574/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com