我正在编写一个脚本来使用JFrog Artifactory凭据配置.npmrc
文件。 Artifactory / NPM要求配置的密码为base64编码,即(使用密码“test”):
//mycompany.jfrog.io/mycompany/api/npm/npm-repo/:_password=dGVzdAo=
但是,base64编码的字符串与Artifactory在“设置我”对话框中为密码提供的字符串不匹配。事实上,base64解码Artifactory在此对话框中提供的字符串会产生不同于帐户密码的字符串。 Artifactory生成的密码字符串是如何生成的?
答案 0 :(得分:1)
您可以尝试使用Artifactory生成的加密密码或API密钥进行身份验证,如上所述here
答案 1 :(得分:1)
您可以使用Artifactory npm auth REST API来检索.npmrc的设置 例如:
$ curl -uadmin:<CREDENTIAL> http://<ARTIFACTORY_SERVER_DOMAIN>:8081/artifactory/api/npm/auth
将返回以下回复
_auth = YWRtaW46e0RFU2VkZX1uOFRaaXh1Y0t3bHN4c2RCTVIwNjF3PT0=
email = myemail@email.com
always-auth = true
有关详细信息,请参阅npm存储库documentation。
答案 2 :(得分:0)
我一直在寻找在 Windows 中进行base64编码的方法。
PowerShell脚本:
$Text = ‘Password’
$Bytes = [System.Text.Encoding]::Unicode.GetBytes($Text)
$EncodedText =[Convert]::ToBase64String($Bytes)
echo $EncodedText
这将返回以下响应:
UABhAHMAcwB3AG8AcgBkAA==