关于maven仓库的配置文件密码加密机制及配置

在Maven的settings.xml中,往往要配置访问远程库所在的服务器的username/password。但是明文的密码总是显得那么扎眼,必欲除之而后快。

Apache Maven项目提供了便捷的密码加密机制,该机制的最近更新时间为2018-03-06。

该机制目前只支持在命令行下的操作,如生成密码的密文。

此外,用户还需要在${user.home}/.m2目录下配置settings-security.xml文件,其中包含:
用以加密其他密码的master password(此处也是密文)
或指向另一个保密文件的完整路径
在该加密机制中有两个概念,一个是master password,即用以加密其他密码的密码,另一个就是实际使用的服务器访问密码password。master password的密文配置在settings-security.xml文件中,而服务器访问密码password的密文就可以大大方方地配置在settings.xml中。具体用法如下:

参考官方文档:http://maven.apache.org/guides/mini/guide-encryption.html

1. 生成Master password的密文

命令行中执行如下命令:
 

mvn --encrypt-master-password

根据提示输入Master password:
就可以生成密文{G3Fvv9dVzlsHlaZIIqD0Q1jP+v/UjLWox8Ku6mjWGwo=}\

2. 配置${user.home}/.m2/settings-security.xml文件

# cat ~/.m2/settings-security.xml 
<settingsSecurity>
  <master>{OL3eJQVE6WcHm6LPP8666Ccy1s/g8HN/1sn2BedcM4E=}</master>
</settingsSecurity>

如果settings-security.xml文件被保存到U盘,则配置${user.home}/.m2/settings-security.xml文件如下

<settingsSecurity>
  <master>/my_u_volume/my_path/settings-security.xml</master>
</settingsSecurity>

3. 加密访问服务器的密码

命令行中执行如下命令:

mvn --encrypt-password

根据提示输入Password:

就可以生成密文{2WH8+8sDqngHFW02dRJaz15KsDc2jQWwPrYsoF05dPw=}

4. 配置 ~/.m2/settings.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <servers>
    <server>
      <username>admin</username>
      <password>{Zf6k8EnVh5EHL3sen2jBXPDO04XqragJoTSlUn9HNWc=}</password>
      <id>central</id>
    </server>
    <server>
      <username>admin</username>
      <password>{Zf6k8EnVh5EHL3sen2jBXPDO04XqragJoTSlUn9HNWc=}</password>
      <id>snapshots</id>
    </server>
  </servers>
  <profiles>
    <profile>
      <repositories>
        <repository>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
          <id>central</id>
          <name>Aicloud-mvn</name>
          <url>http://172.16.5.203:8081/artifactory/Aicloud-mvn</url>
        </repository>
        <repository>
          <snapshots />
          <id>snapshots</id>
          <name>Aicloud-mvn</name>
          <url>http://172.16.5.203:8081/artifactory/Aicloud-mvn</url>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
          <id>central</id>
          <name>Aicloud-mvn</name>
          <url>http://172.16.5.203:8081/artifactory/Aicloud-mvn</url>
        </pluginRepository>
        <pluginRepository>
          <snapshots />
          <id>snapshots</id>
          <name>Aicloud-mvn</name>
          <url>http://172.16.5.203:8081/artifactory/Aicloud-mvn</url>
        </pluginRepository>
      </pluginRepositories>
      <id>artifactory</id>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>artifactory</activeProfile>
  </activeProfiles>

 <mirrors>
    <mirror>
        <id>hfmaven</id>
        <name>hf maven</name>
        <url>http://172.16.5.203:8081/artifactory/hf-jcenter-remote/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
</settings>

阿里Maven镜像


  <!-- 阿里云 Maven 镜像 -->
  <mirrors>
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
</settings>

maven包下配置属全局配置文件/usr/local/maven/conf/settings.xml,$HOME/.m2/setting.xml是用户配置文件

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值