【问题解决】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博客

相关推荐
李拾叁的摸鱼日常3 分钟前
Spring 框架中 RequestContextHolder 深度解析
java·架构
C++业余爱好者12 分钟前
JVM优化入门指南:JVM垃圾收集器(GC)介绍
java·开发语言·jvm
Trouvaille ~17 分钟前
【Java篇】基石与蓝图::Object 类与抽象类的双重奏
java·开发语言·javase·抽象类·类与对象·基础入门·object类
小光学长21 分钟前
基于ssm的美妆产品推荐系统rah0h134(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring
Light6030 分钟前
破局“数据孤岛”:构建业务、财务、指标三位一体的智能数据模型
java·大数据·开发语言
中文很快乐31 分钟前
从零到一:用 SpringBoot 打造 RESTful API 实战指南
java·spring boot·后端·restful
泉城老铁32 分钟前
springboot+redis 如何实现订单的过期
java·后端·架构
哈哈哈笑什么36 分钟前
在高并发分布式SpringCloud系统中,什么时候时候并行查询,提高查询接口效率,从10s到100ms
java·分布式·后端
IMPYLH36 分钟前
Lua 的 warn 函数
java·开发语言·笔记·junit·lua
泉城老铁39 分钟前
如何用Spring Boot实现分布式锁?
java·redis·后端