我已经安装了一个sonatype nexus作为我的maven repo。是使用Active Directory对用户进行身份验证,而匿名登录是关闭的。
将工件上传到我的存储库的每个用户都必须使用唯一的用户名进行标识,从而实现了AD集成。
使用此结构的常规方法是在POM.xml
中设置Distribution Managemente标记,以便将工件发送到nexus
<distributionManagement>
...
<repository>
<id>deploymentRepo</id>
<name>Internal Releases</name>
<url>http://nexusserver:8081/nexus/content/repositories/releases</url>
</repository>
...
</distributionManagement>
在本地存储库设置(~/.m2/settings.xml
)中,添加用户名/密码组合以登录到nexus.
<server>
<id>deploymentRepo</id>
<username>deployment</username>
<password>deployment123</password>
</server>
它对我来说工作得很好,但我试图实现的是以某种方式在nexus中进行身份验证,而不必将用户密码放在本地存储库中。有可能吗?
发布于 2012-05-17 02:26:35
您想要达到什么目的:不以纯文本形式存储密码,或者让用户在每次运行maven deploy命令时都必须传递密码?
密码可以以加密的形式存储,如here所述
或者您可以尝试在命令行中传递密码,如下所示,但我还没有尝试过:
mnv -Dpassword=deployment123 deploy
发布于 2012-05-24 19:24:44
Nexus2.1将于6月份发布,我们已经构建了一个新功能来支持安全身份验证,而不需要在settings.xml中使用明文密码。
https://stackoverflow.com/questions/10624198
复制相似问题