Jenkins修改管理員密碼.
阿新 • • 發佈:2022-05-04
前言: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 class Test { 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"); } }
備註:jar包下載地址 http://mvnrepository.com/artifact/org.mindrot/jbcrypt
2、修改Jenkins的admin密碼
3、重啟Jenkins,就可以看到修改效果了。
http://localhost:8080/restart