我正在尝试使用 global.sbt
中的未加密密码访问 Nexus OSS 存储库喜欢 this , 我的 global.sbt
是:
credentials += Credentials("Sonatype Nexus", "repo.example.com", "username", "unencrypted_password")
我想考虑设置加密密码。
最佳答案
您可以创建一个名为 .credentials
的文件。 , 下 ~/.ivy2/.credentials
.这是一个相当标准的位置,但显然您可以将文件放在磁盘上的任何位置。
该文件如下所示:
realm = Sonatype Nexus Repository Manager
host = oss.sonatype.org
user = publishing@yourco.com
password = $encrypted
要加密密码,您可以使用已知的 AES 密码,这意味着您基本上可以执行以下操作:
val credential: DirectCredentials = Credentials(Path.userHome / ".ivy2" / ".credentials")
val decrypted = credential.copy(passwd = decryptAes(credential.passwd))
现在你需要的是一个公司范围内或类似的共享密码,以及一种解密 AES 的方法,为此看起来 here .
关于scala - 如何将加密密码设置为凭据以使用 sbt 发布 Nexus OSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39952769/