
Изменить/Поменять пароль для пользователя Jenkins
Недавно у меня на работе забыли пароль от пользователя в Jenkins и попросили помочь. Решение будет описано в моей статье «Изменить/Поменять пароль для пользователя Jenkins» в более подробной форме.
Открываем:
vim /var/lib/jenkins/users/YOUR_USER/config.xml
У меня он выглядит следующим образом:
<?xml version='1.0' encoding='UTF-8'?> <user> <fullName>captain</fullName> <properties> <jenkins.security.ApiTokenProperty> <apiToken>ZcHHZXEY+WPWZUlDMJPwyu6fUxe7QFQ9XOj1edGRw1YrEvcoNA6lNBF75tImQwVC</apiToken> </jenkins.security.ApiTokenProperty> <com.cloudbees.plugins.credentials.UserCredentialsProvider_-UserCredentialsProperty plugin="credentials@2.1.10"> <domainCredentialsMap class="hudson.util.CopyOnWriteMap$Hash"/> </com.cloudbees.plugins.credentials.UserCredentialsProvider_-UserCredentialsProperty> <hudson.plugins.emailext.watching.EmailExtWatchAction_-UserProperty plugin="email-ext@2.52"> <triggers/> </hudson.plugins.emailext.watching.EmailExtWatchAction_-UserProperty> <hudson.model.MyViewsProperty> <views> <hudson.model.AllView> <owner class="hudson.model.MyViewsProperty" reference="../../.."/> <name>Все</name> <filterExecutors>false</filterExecutors> <filterQueue>false</filterQueue> <properties class="hudson.model.View$PropertyList"/> </hudson.model.AllView> </views> </hudson.model.MyViewsProperty> <hudson.model.PaneStatusProperties> <collapsed/> </hudson.model.PaneStatusProperties> <hudson.search.UserSearchProperty> <insensitiveSearch>false</insensitiveSearch> </hudson.search.UserSearchProperty> <hudson.security.HudsonPrivateSecurityRealm_-Details> <passwordHash>#jbcrypt:$2a$10$CvGnM0RZ1TVdbArLKvI5heQEpUj7//p4MZrT4Tx09vwg4G1Fpflg.</passwordHash> </hudson.security.HudsonPrivateSecurityRealm_-Details> <hudson.tasks.Mailer_-UserProperty plugin="mailer@1.18"> <emailAddress>captain@captain.com</emailAddress> </hudson.tasks.Mailer_-UserProperty> <jenkins.security.LastGrantedAuthoritiesProperty> <roles> <string>authenticated</string> </roles> <timestamp>1481706204534</timestamp> </jenkins.security.LastGrantedAuthoritiesProperty> </properties> </user>
Как можно было догадаться, мой пользователь — captain. Пароль от данного пользователя представлен в поле «passwordHash» — это его хэш и чтобы поменять пароль, необходимо сгенерировать хеш от нужного вам пароля.
Это можно сделать несколькими способами:
- Использовать онлайн генераторы
- Через терминал в Unix/Linux
Мной был выбран онлайн генератор — bcrypthashgenerator.apphbТУТточкаСТОИТcom
Замените «ТУТточкаСТОИТ» на точку и перейдите на сайт.
А вы авантюрист: светить всему миру apiToken — это достойно…
Начнем с того, что — это локальная машина! Во вторых, я не такой человек чтобы оставлять правдивую информацию на сайте ( я за токены, API, логины, пароль и подобную информацию). Как-то так 😉