Java 将密码移出战争
我们有一个在tomcat上运行的web应用程序,它在一些Java 将密码移出战争,java,tomcat,jakarta-ee,war,Java,Tomcat,Jakarta Ee,War,我们有一个在tomcat上运行的web应用程序,它在一些.java文件中具有硬编码密码。我们的安全人员一点也不高兴,他们要求我们将文件移到外部 我的假设是,最好的方法是在tomcat/conf目录中放置一个属性文件?或者在一个配置文件中设置某种JDNI属性 是否有一种普遍可接受的方法来实现这一点 我看到这篇文章对非tomcat有一些答案: 为了更具体,我们有应用程序管理的数据库连接,我想获取凭据。我假设我需要了解如何将它们放入JNDI资源中,然后查询该资源中的用户名/密码?一个相当简单的解决方案
.java
文件中具有硬编码密码。我们的安全人员一点也不高兴,他们要求我们将文件移到外部
我的假设是,最好的方法是在tomcat/conf
目录中放置一个属性文件?或者在一个配置文件中设置某种JDNI属性
是否有一种普遍可接受的方法来实现这一点
我看到这篇文章对非tomcat有一些答案:
为了更具体,我们有应用程序管理的数据库连接,我想获取凭据。我假设我需要了解如何将它们放入
JNDI
资源中,然后查询该资源中的用户名/密码?一个相当简单的解决方案就是通过以下方式从应用程序外部化凭据:
- 在appserver配置中创建JNDI条目
- 限制对此文件的访问(只有正在进行relase的人才能访问该文件)
- 让应用程序使用JNDI资源获取连接
- 如果凭据来自数据库,我建议您可以使用JNDI别名,JNDI将在应用服务器上配置
- 如果凭据来自其他用途,则需要加密并设置属性文件:解析凭据的服务器将需要具有算法
- 在任何其他情况下,用户都需要实时输入凭据