542179528 发表于 2018-1-7 11:42:07

Jenkins修改管理员密码.

  前言:Jenkins修改管理员密码,我看了网上所有的教程,竟然全都是拿着一串已经加密好的111111的密文去替代config.xml文件里面的密码,然后大家的密码都是111111!我觉得这种做法实在太敷衍了!于是我就研究了下,包括Jenkins密码的加密方式,以及如何修改管理员的密码,当然,通过配置Jenkins允许注册用户,去注册一个用户,也不失为一个好选择。
  1、Jenkies的加密方式
   Jenkins的密码采用的是Java加解密工具 jBCrypt,我也是第一次接触到这种加密方式,实在被他惊叹到了!这种加密方式每次加密同一个明文竟然都是得到不一样的结果,那他又是通过怎样的方式来解密的呢?原来,他拿着用户的明文,和存储的密文去重新生成一串密文去判断。总结如下,它有以下特点:

关于bcrypt:
1、bcrypt是不可逆的加密算法,无法通过解密密文得到明文。
2、bcrypt和其他对称或非对称加密方式不同的是,不是直接解密得到明文,也不是二次加密比较密文,而是把明文和存储的密文一块运算得到另一个密文,如果这两个密文相同则验证成功。
       3、对于同一个明文的加密结果一般不同。
   附上Java源码  

import org.mindrot.jbcrypt.BCrypt;  

  

/**  
* Created by Administrator on 2017/6/2.
  
* <p>
  
* Description:
  

*/  
public>  
{
  
public static void main(String[] args)
  
{
  
//这是加密方式
  
String hashed = BCrypt.hashpw("nimda", BCrypt.gensalt());
  
System.out.println(hashed);
  

  
//这是解密方式
  
if (BCrypt.checkpw("nimda", hashed))
  
System.out.println("It matches");
  
else
  
System.out.println("It does not match");
  
}
  
}
  


https://images2015.cnblogs.com/blog/1153954/201706/1153954-20170602153918774-213733841.png
  2、修改Jenkins的admin密码
  https://images2015.cnblogs.com/blog/1153954/201706/1153954-20170602154250368-411143254.png
  3、重启Jenkins,就可以看到修改效果了。
  http://localhost:8080/restart
页: [1]
查看完整版本: Jenkins修改管理员密码.