はじめに
- セキュリティの設定を間違えてログインできなくなってしまった。
- Jenkinsの初期セットアップ時にセキュリティを無効にして作業したい。
といったときに、Jenkinsのセキュリティ設定を無効にし、ログインなしで管理項目を操作できるようにする方法を説明します。
- 検証環境:Jenkins ver.2.11
Jenkinsの日本語版Wikiの情報の設定を実施してみましたが、「旧データの管理」に関する警告がでます。
- Jenkins 日本語版 Wiki:Disable security(リンク)
現在のJenkins(ver.2.11)は、日本語版Wikiを作成したときと、状況が異なっているようです。
これから紹介する方法は、「旧データの管理」に関する警告がでない方法です。
手順概要
- Jenkinsを停止する。
- $JENKINS_HOME(/var/lib/jenkins)/config.xml をバックアップ。
- config.xml を編集する。
- Jenkinsを起動する。
config.xml の編集
- useSecurityをfalseに設定
- authorizationStrategyを削除
- securityRealmを削除
ポイントは、authorizationStrategyとsecurityRealmを編集ではなく、削除するところです。
編集前
config.xml
<useSecurity>true</useSecurity>
<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy">
<denyAnonymousReadAccess>true</denyAnonymousReadAccess>
</authorizationStrategy>
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
<disableSignup>true</disableSignup>
<enableCaptcha>false</enableCaptcha>
</securityRealm>
編集後
config.xml
<useSecurity>false</useSecurity>
おわりに
Jenkinsの英語版Wikiの情報は、上記の流れになっていてOKです。
- Disable security(リンク)
セキュリティを無効化した状態は大変危険です。
本来であればJenkinsの管理者しかできない操作を、ネットワーク上の全ての人に対して許可している状態になっています。
悪用を防ぐために、運用時は認証を有効化することを検討してください。
※ Ansibleで上記のセットアップを行う方法を記事にしました。
AnsibleでJenkinsをセットアップする