メインコンテンツにスキップ

Jenkins (OIDC)

Use Casdoor as the OIDC identity provider for Jenkins so users sign in with their Casdoor accounts.

Terms: CASDOOR_HOSTNAME — Casdoor server URL; JENKINS_HOSTNAME — Jenkins server URL.

ステップ1:CasdoorとJenkinsをデプロイする

Deploy Casdoor and Jenkins. Then:

  1. JenkinsのURL(管理Jenkins -> システムの設定 -> Jenkinsの位置)をJENKINS_HOSTNAMEに設定します。 JenkinsのURL

  2. Casdoorが正常にログインして使用できることを確認してください。

  3. Casdoorのoriginの値(conf/app.conf)をCASDOOR_HOSTNAMEに設定します。 Casdoorの設定

ステップ2:Casdoorアプリケーションを設定する

  1. Create or edit a Casdoor application.
  2. Add redirect URL: http://JENKINS_HOSTNAME/securityRealm/finishLogin.
  3. Add providers as needed. Note the Client ID and Client secret from the application page.

OIDC discovery URL: http://CASDOOR_HOSTNAME/.well-known/openid-configuration

Casdoorアプリケーションの設定

ステップ3:Jenkinsを設定する

Install the OpenId Connect Authentication plugin (Jenkins does not support OIDC by default).

インストールが完了したら、管理Jenkins -> グローバルセキュリティの設定に進みます。 jenkinsのグローバルセキュリティ

ヒント

設定エラーが発生した場合に備えて、Jenkinsのconfig.xmlファイルをバックアップしておくことを確認してください。

  1. アクセスコントロールで、セキュリティ領域としてLogin with Openid Connectを選択します。

  2. 上記でメモしたClient IDClient IDフィールドに指定します。

  3. 上記でメモしたClient secretClient secretフィールドに指定します。

  4. 設定モードで、Automatic configurationを選択し、Well-known configuration endpointとしてhttp://CASDOOR_HOSTNAME/.well-known/openid-configurationを入力します。 Jenkinsの設定

    Casdoorがローカルにデプロイされている場合は、Manual configurationを選択し、以下の情報を提供する必要があります:

    • トークンサーバーURL:http://CASDOOR_HOSTNAME/api/login/oauth/access_token
    • 認証サーバーURL:http://CASDOOR_HOSTNAME/login/oauth/authorize
    • UserInfoサーバーURL:http://CASDOOR_HOSTNAME/api/get-account
    • スコープ:address phone openid profile offline_access email 手動設定
  5. 詳細設定をクリックし、以下を入力します:

    • ユーザー名フィールドにはnameを指定します。
    • フルネームフィールドにはdisplayNameを指定します。
    • メールフィールドにはemailを指定します。

    ユーザー情報フィールドの設定

  6. 認証セクションで、「ログインしたユーザーは何でもできる」を有効にし、「匿名での読み取りアクセスを許可する」を無効にします。 より複雑な認証を後で設定できますが、今はOpenIDが正しく動作するかどうかを確認してください。

    Jenkinsからログアウトすると、認証のためにCasdoorにリダイレクトされるはずです。Jenkinsのログインページ