【问题标题】:Is there existing support in tomcat for a JDBCRealm that takes in a salt?在 tomcat 中是否存在对接受盐的 JDBCRealm 的支持?
【发布时间】:2011-09-10 20:52:36
【问题描述】:

我们目前使用的是 tomcat 5.5,并希望在我们的 JDBCRealm 身份验证中添加盐。我想知道是否有任何现有的类,或者我们是否需要扩展 JDBCRealm 并编写我们自己的身份验证类?

我们的 server.xml 中有以下内容

<Realm className="org.apache.catalina.realm.JDBCRealm" ...more stuff… />

但是这个类看起来不像是盐。

【问题讨论】:

    标签: security tomcat jdbcrealm


    【解决方案1】:
    1. 编写您自己的 JDBCRealmWithSalt 类来扩展 JDBCRealm
    2. 覆盖digest() 方法(在此处添加盐)
    3. JDBCRealmWithSalt 放入catalina.jar:org/apache/catalina/realm
    4. &lt;Realm className="org.apache.catalina.realm.JDBCRealmWithSalt"...&gt;

    【讨论】:

      【解决方案2】:

      Tomcat 5.5 API 中没有内置类,因此您必须使用自定义类。

      一个例子可以在http://eneuwirt.de/2011/05/01/saltawarejdbcrealm/找到

      【讨论】:

      【解决方案3】:

      从 Tomcat 8 开始,您可以指定任何开箱即用的 Realm:

      • 所需的算法
      • 要使用的编码
      • 迭代次数
      • 密钥长度

      您可以在CATALINA_HOME/bin/digest.[bat|sh] 中提供这些信息

      欲了解更多信息:https://tomcat.apache.org/tomcat-8.0-doc/realm-howto.html

      【讨论】:

        猜你喜欢
        • 2016-08-17
        • 2012-04-02
        • 2015-08-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-22
        • 2012-12-21
        相关资源
        最近更新 更多