如何在pom.xml中使用加密密码和maven 3?
我有一些使用密码的pom对我们非常熟悉,例如我们将POM部署在Weblogic等应用程序服务器中或在数据库中运行Scripts,我们不喜欢只设置密码是
我已经拥有部署工件的主密码。
我在想是否有办法生成密码:
$ mvn --encrypt-password somepass
{wGpHaPO3nJ4HSKJa7qcMK9qjHAdwlvMrtjYjj8bwguI=}
之后我可以用这种方式在一些pom中使用它:
<configuration>
<driver>oracle.jdbc.driver.OracleDriver</driver>
<url>jdbc:oracle:thin:@ordbsdev.siman.com:1521:RMSDEV</url>
<username>${siman.rms13.db.user}</username>
<password>{wGpHaPO3nJ4HSKJa7qcMK9qjHAdwlvMrtjYjj8bwguI=}</password>
</configuration>
此外,我还要感谢另一种选择。
答案 0 :(得分:3)
我认为Tunaki要求你做的是在settings.xml中定义一个属性,例如
<settings ...
<profile>
...
<properties>
<xyz>{wGpHaPO3nJ4HSKJa7qcMK9qjHAdwlvMrtjYjj8bwguI=}</xyz>
</properties>
<profile>
</setting>
然后在POM中的设置中使用此属性:
<configuration>
...
<password>${xyz}</password>
</configuration>
但是,阅读此配置的工具必须能够解密密码。
更好的方法是将加密密码与服务器配置一起存储在settings.xml中,如下所示:
<settings ...
...
<servers>
...
<server>
<id>xyz</id>
<username>manager</username>
<password>{wGpHaPO3nJ4HSKJa7qcMK9qjHAdwlvMrtjYjj8bwguI=}</password>
</server>
...
</servers>
...
</setting>
但同样,配置信息的使用者必须能够读取服务器配置。在https://maven.apache.org/guides/mini/guide-encryption.html有一个Maven Deploy插件示例(例如-DrepositoryId = xyz)。
引用的问题列出了SqlExecMojo作为插件如何解密密码的示例。