Jenkinsプラグイン
Casdoorは、ユーザーがJenkinsにログインするためのプラグインを提供します。 ここでは、Casdoorプラグインを使用してJenkinsのセキュリティを行う方法をご紹介します。
以下はいくつかの設定項目です:
CASDOOR_HOSTNAME
:Casdoorサーバーがデプロイされているドメイン名またはIP。
JENKINS_HOSTNAME
:Jenkinsがデプロイされているドメイン名またはIP。
ステップ1:CasdoorとJenkinsをデプロイする
デプロイが成功したら、以下を確認してください:
- JenkinsのURL(Manage Jenkins -> Configure System -> Jenkins Location)を
JENKINS_HOSTNAME
に設定します。 - Casdoorにログインして正常に使用できることを確認します。
- Casdoorの
origin
値(conf/app.conf)をCASDOOR_HOSTNAME
に設定します。
ステップ2:Casdoorアプリケーションを設定する
- 新しいCasdoorアプリケーションを作成するか、既存のものを使用します。
- リダイレクトURLを追加します:
http://JENKINS_HOSTNAME/securityRealm/finishLogin
- 必要なプロバイダーを追加し、追加の設定を行います。
アプリケーション設定ページで、Client ID
とClient secret
の2つの値を見つけることができます。上の画像のように表示されます。 これらの値は次のステップで使用します。
お気に入りのブラウザを開いて、http://CASDOOR_HOSTNAME
/.well-known/openid-configurationにアクセスし、CasdoorのOIDC設定を表示します。
ステップ3:Jenkinsを設定する
これで、マーケットプレイスからCasdoorプラグインをインストールするか、jar
ファイルをアップロードしてインストールすることができます。
インストールが完了したら、Manage Jenkins -> Configure Global Securityに移動します。
提案:Jenkinsのconfig.xml
ファイルをバックアップし、設定エラーの場合に復旧に使用します。
- セキュリティ領域セクションで、「Casdoor認証プラグイン」を選択します。
- Casdoorエンドポイントフィールドに、先ほど言及した
CASDOOR_HOSTNAME
を入力します。 - クライアントIDフィールドに、先ほど言及した
Client ID
を入力します。 - クライアントシークレットフィールドに、先ほど言及した
Client secret
を入力します。 - JWT公開鍵フィールドに、JWTトークンの検証に使用する公開鍵を提供します。 Casdoorで公開鍵を見つけるには、上部の
Cert
をクリックします。 アプリケーションでedit
をクリックした後、次のページから公開鍵をコピーできます。 - 組織名とアプリケーション名はオプションです。 他の組織やアプリケーションのユーザーを検証するために、組織とアプリケーションを指定することができます。 これらのフィールドが空の場合、プラグインはデフォルトの組織とアプリケーションを使用します。
- 認証セクションで、「ログインしたユーザーは何でもできる」をチェックします。 「匿名の読み取りアクセスを許可する」を無効にします。
Save
をクリックします。
これで、Jenkinsは自動的にCasdoorにリダイレクトして認証を行います。