【问题解决】Maven密码加密

普通的maven部署方式是把maven私服的账号密码以明文的方式配置在settings.xml文件中

XML 复制代码
<server>

<id>deploymentRepo</id>

<username>xxx</username>

<password>123</password>

</server>

这种方式的配置很容易被别人看到从而泄漏了个人信息。

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

XML 复制代码
mvn --encrypt-master-password <password>

mvn --encrypt-password <password>

1) 获取master密码

执行

XML 复制代码
mvn --encrypt-master-password

即可得到一个master密码,例如对123这个密码进行加密:

XML 复制代码
mvn --encrypt-master-password 123

得到加密串:

XML 复制代码
{VrVw6/Cg8FYHpfLj8oO/qRbMY5VrfGtIeR7RX5OHeV0=}

我们需要打开~/.m2/settings-security.xml这个文件(如果没有就手动创建)

添加到标签中,文件内容如下:

XML 复制代码
<settingsSecurity> 
<master>{VrVw6/Cg8FYHpfLj8oO/qRbMY5VrfGtIeR7RX5OHeV0=}</master>
</settingsSecurity>

2) 获取server加密密码

执行

XML 复制代码
mvn --encrypt-password 

即可得到一个server密码,例如再对123这个密码进行加密:

XML 复制代码
mvn --encrypt-password 123

得到加密串:

XML 复制代码
{2Db+TFdWDgQHlN7gBd1PAZHEC5h5E3Wuhcs9NBLdVIE=}

把这个加密串添加到settings.xml中server节点的password中:

XML 复制代码
<server> 
<id>deploymentRepo</id> 
<username>admin</username>
<password>{2Db+TFdWDgQHlN7gBd1PAZHEC5h5E3Wuhcs9NBLdVIE=}</password>
</server>

参考:

https://www.cnblogs.com/kingsy/p/6380787.html

maven在settings.xml中存储加密密码-CSDN博客

相关推荐
SimonKing2 小时前
艹,维护AI写的代码,我心态崩了......
java·后端·程序员
用户298698530143 小时前
Java Word 文档样式进阶:段落与文本背景色设置完全指南
java·后端
小bo波18 小时前
从"任意文件复制"深挖Java I/O:字符流与字节流的本质抉择
java·nio·io流·后端开发·文件复制
nanxun8862 天前
记一次诡异的 Docker 容器"串包"故障排查
java
用户1563068103512 天前
Day01 | Java 基础(Java SE)
java
行者全栈架构师2 天前
Maven dependency:tree 的 8 个高级用法
java·后端
行者全栈架构师2 天前
IDEA 中 Maven 项目的 15 个红色报错快速解决方法
java·后端
令人头秃的代码0_02 天前
mac(m5)平台编译openjdk
java
唐青枫3 天前
Java JDBC 实战指南:从 Connection 到事务和连接池
java
一个做软件开发的牛马3 天前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解
java·后端