Eu assumi o projeto em que muitas credenciais do Jenkins têm senhas ou sequências de senhas que eu preciso saber para avançar no projeto, infelizmente elas não foram documentadas em nenhum lugar.
Eu verifiquei o credentials.xml
arquivo em que essas credenciais estão armazenadas, mas elas não estão em texto simples, por exemplo:
<passphrase>{AAAAAAAAAAAANzxft/rDzyt8mhxpn3O72dxvVqZksL5vBJ4jNKvAjAA=}</passphrase>
Nota: eu mudei um pouco por motivos de privacidade.
Como posso descriptografar sua senha original com base na string acima?
jenkins
encryption
kenorb
fonte
fonte
"{...}"
remova mais uma vez.Respostas:
Felizmente, existe uma
hudson.util.Secret.decrypt()
função que pode ser usada para isso, então:/script
página.Execute o seguinte comando:
ou:
onde
{XXX=}
está sua senha criptografada. Isso imprimirá a senha simples.Para fazer o oposto, execute:
Fonte: gist at
tuxfight3r/jenkins-decrypt.groovy
.Como alternativa, verifique os seguintes scripts:
tweksteen/jenkins-decrypt
,menski/jenkins-decrypt.py
.Para mais detalhes, consulte: Armazenamento de credenciais no Jenkins .
fonte
Aqui está um pequeno trecho que você pode executar no console de scripts jenkins, para despejar todas as suas credenciais em texto sem formatação.
Uma versão mais complicada que lista fornecedores de credenciais que não são do sistema:
fonte
Para o registro, o seguinte snippet a ser colado no console também faz o trabalho:
fonte