【问题标题】:how to protect the db username and password in tomcat server.xml [duplicate]如何保护tomcat server.xml中的db用户名和密码[重复]
【发布时间】:2016-09-15 21:16:42
【问题描述】:

我有一个 spring 应用程序,我正在将它部署在 tomcat7 上。对于连接,我在 server.xml 中配置了 jndi 这是我的 xml 文件。

<Resource auth="Container" driverClassName="oracle.jdbc.OracleDriver"
            factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
             global="jdbc/MCDataSource"
            initialSize="20" maxAge="7200000" maxIdle="20" maxTotal="75"
            maxWaitMillis="15000" name="jdbc/MCDataSource" password="AppDB"
            testOnBorrow="true" type="javax.sql.DataSource"
            url="jdbc:oracle:thin:@172.19.8.159:1521/OIM.itba.gov.in" username="AppDB"
            validationQuery="select 1" />

在这里我需要一些建议,告诉我如何在生产环境中保护我的用户名、密码。 我已经看到很多建议我们可以进行加密,但有些建议就像加密不是最好的保护方式,因为它可以很容易地解密。我知道我不应该在这里传递这样的计划文本。所以我只想知道解决这个问题的最佳方法是什么。

【问题讨论】:

    标签: java spring tomcat7


    【解决方案1】:

    1) 在 server.xml 中的 &lt;Realm&gt; 元素上添加 digest 属性,值为 md5。

    2) 转到您的CATALINA_HOME 并运行以下命令

    java -cp lib/catalina.jar:bin/tomcat-juli.jar org.apache.catalina.realm.RealmBase -a md5 <YOUR_PASSWORD> 
    

    你会得到&lt;YOUR_PASSWORD&gt;:&lt;ENCRYPTED_PASSWORD&gt;

    3) 将您的 tomcat-users.xml 中用户的 password 属性值替换为 &lt;ENCRYPTED_PASSWORD&gt;

    4) 重启tomcat

    【讨论】:

      猜你喜欢
      • 2018-01-20
      • 2011-08-21
      • 1970-01-01
      • 2021-10-21
      • 1970-01-01
      • 2011-06-20
      • 2016-10-03
      相关资源
      最近更新 更多