首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven密码加密BadPaddingException

Maven密码加密BadPaddingException
EN

Stack Overflow用户
提问于 2015-07-20 20:24:14
回答 5查看 9.3K关注 0票数 11

我试图在我的settings.xml中加密服务器密码,当我试图部署一个工件时,我得到了这个异常。

代码语言:javascript
复制
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
    at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:811)
    at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:676)
    at com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:313)
    at javax.crypto.Cipher.doFinal(Cipher.java:2087)
    at org.sonatype.plexus.components.cipher.PBECipher.decrypt64(PBECipher.java:185)
    ... 18 more

以下是xml的摘录

代码语言:javascript
复制
<server>
            <id>server</id>
            <username>username</username>
            <password>{N8AF8BmQ5x8HZX/yrlrP1QiKNMEdoXWyBFZd/*zIabY=}</password> 
        </server>

我的主密码也出现了同样的例外情况,我只是遵循这里的说明,https://maven.apache.org/guides/mini/guide-encryption.html创建了一个安全-setings.xml,如指南中所示,执行这两个命令并将加密密码复制到适当的xml文件中。

代码语言:javascript
复制
mvn --encrypt-master-password <password>
mvn --encrypt-password <password>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-09-06 16:59:58

在罕见的情况下,有一个逃避的问题,这很可能发生在这里。考虑重新生成主密码(使用-emp或-加密-主密码)和/或密码(使用-ep或-加密-密码)。他们的价值观每次都会有所不同。

票数 7
EN

Stack Overflow用户

发布于 2017-01-11 09:00:25

或者是偶然地,你复制了错误的参数:

代码语言:javascript
复制
--encrypt-master-password 

并将输出放在settings.xml中,而不是:

代码语言:javascript
复制
--encrypt-password

这给我带来了麻烦。(该死的密码过期策略)

票数 5
EN

Stack Overflow用户

发布于 2021-06-10 12:38:54

让我们了解一下这里的问题。

mvn加密密码用于确保对受保护的存储库服务器(可能是Nexus或JFrog)的安全访问。

此访问基于2个设置。

  1. 可在/conf/setings.xml中使用的公共设置,它将定义存储库的列表以及它们所需的用户名密码。典型的条目如下所示

代码语言:javascript
复制
<server>
      <id>my.server</id>
      <username>foo</username>
      <password>{COQLCE6DU6GtcS5P=}</password>
 </server>

若要具有此文件的密码,命令为

代码语言:javascript
复制
mvn --encrypt-password <password>
  1. 本地回购路径中可用的用户特定设置(可在/conf/setings.xml中找到),类似于C:/ User /user/.m2/sets-security.xml,如下所示

代码语言:javascript
复制
<settingsSecurity>
  <master>{jSMOWnoPFgsHVpMvz5VrIt5kRbzGpI8u+9EF1iFQyJQ=}</master>
</settingsSecurity>

若要具有此文件的密码,mvn命令为

代码语言:javascript
复制
mvn --encrypt-master-password <password>

现在问题中提到的例外情况主要是在设置-security.file中意外复制mvn --encrypt-password <password>生成的密码而不是使用mvn --encrypt-master-password <password>生成的密码的潜在副作用。

所以,反复检查你的步骤,它应该能解决这个问题。

如需详细参考,请访问Maven -密码加密

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31525691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档