无法让Tomcat JDBCRealm使用SHA2

时间:2012-04-29 15:04:58

标签: tomcat tomcat7 jdbcrealm sha2

我在明文(开发/受控环境)中使用Tomcat 7 / JDBCRealm身份验证。现在我想将Web应用程序上传到我的托管环境,因此我需要消化密码。

我将'digest =“MD5”'添加到server.xml中的realm部分,并通过使用MySQL的MD5()函数替换现有的明文密码来测试某些帐户。

这很好。

当我尝试使用SHA2(server.xml中的'digest =“SHA2”,以及MySQL的SHA2()函数来消化表中的密码时),我一直遇到登录失败。我尝试了MySQL的SHA2(pwd,224),SHA2(pwd,256),... 384,... 515,但都没有用。

我在网上搜索tomcat JDBCRealm / digest属性的信息量不大。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

在Tomcat日志中查找告诉您SHA-2不是有效算法的消息。如果没有这样的消息,请提出一个Tomcat错误。

您需要使用以下其中一项:

  • SHA-256
  • SHA-384
  • SHA-512

显然,你需要在MySQL中使用相应的摘要。