maven在settings.xml中存储加密密码

maven配置server时对password进行加密

1.需求

因为公司的编译服务器部署在了阿里云上,需要在编译完成后上传编译后的aar文件到公司maven私服上,普通的maven部署方式是把maven私服的账号密码以明文的方式配置在settings.xml文件中


      deploymentRepo
      admin
      12345678

这种方式的配置很容易被别人看到从而泄漏了你的个人信息,显然是不适应于我的这种环境下使用的。

2.加密

maven其实可以对用户密码进行加密,需要用到下面2个命令

mvn --encrypt-master-password 
mvn --encrypt-password 

2-1 获取master密码

执行mvn --encrypt-master-password 即可得到一个master密码,例如对12345678这个密码进行加密:
mvn --encrypt-master-password 12345678
得到加密串:
{VrVw6/Cg8FYHpfLj8oO/qRbMY5VrfGtIeR7RX5OHeV0=}
我们需要打开~/.m2/settings-security.xml这个文件(如果没有就手动创建)
添加到标签中,文件内容如下:


    {VrVw6/Cg8FYHpfLj8oO/qRbMY5VrfGtIeR7RX5OHeV0=}

2-2 获取server加密密码

执行mvn --encrypt-password 即可得到一个server密码,例如再对12345678这个密码进行加密:
mvn --encrypt-password 12345678
得到加密串:
{2Db+TFdWDgQHlN7gBd1PAZHEC5h5E3Wuhcs9NBLdVIE=}
把这个加密串添加到settings.xml中server节点的password中:


      deploymentRepo
      admin
      {2Db+TFdWDgQHlN7gBd1PAZHEC5h5E3Wuhcs9NBLdVIE=}
    

你可能感兴趣的:(文件配置)