在GitHub上公开时隐藏字符串<property name =“password”value =“***”> </property>

时间:2014-11-25 09:24:57

标签: java spring spring-mvc spring-bean

当我在GitHub上公共代码时,如何隐藏我的mvc-dispatcher-servlet.xml中的字符串?

我无法排除此文件 - 它包含许多重要设置!

2 个答案:

答案 0 :(得分:0)

根本不可能。你必须使用其他机制,例如根本不存储密码,但在执行应用程序时使用系统属性并对其进行配置。

答案 1 :(得分:0)

在我看来,最好的办法是将O / S环境变量用于此类事情。这就是Heroku的作用,而且它们还可以。

原因:

  • 跨平台
  • 很容易被许多编程语言阅读
  • 只有用户或root才能阅读
  • 幸存重启
  • 从不随意将密码检入源代码管理
  • 在不编辑任何文件的情况下,可以在不同的计算机上轻松配置不同的配置

如果您在spring app context config中使用<context:property-placeholder />,那么Spring可以读取O / S env vars,如$USERNAME

您可能必须在更改env vars后重新启动IDE。