3.2. OIDC 認証プロバイダーを使用した Keycloak の設定


Red Hat Developer Hub には、Keycloak を使用してユーザーを認証できる OIDC 認証プロバイダーが含まれています。

重要

Keycloak で作成したユーザーは、Developer Hub カタログでも使用可能である必要があります。

手順

  1. Keycloak で、RHDH などの新しいレルムを作成します。
  2. 新しいユーザーを追加します。

    ユーザー名
    ユーザーのユーザー名。例: rhdhuser
    メール
    ユーザーのメールアドレス。
    ユーザーの名。
    ユーザーの姓。
    メールの確認
    On に切り替えます。
  3. Create をクリックします。
  4. Credentials タブに移動します。
  5. Set password をクリックします。
  6. ユーザーアカウントの Password を入力し、TemporaryOff に切り替えます。
  7. 新しいクライアント ID (例: RHDH) を作成します。

    クライアント認証
    On に切り替えます。
    有効なリダイレクト URI
    OIDC ハンドラー URL に設定します (例: https://<RHDH_URL>/api/auth/oidc/handler/frame)
  8. Credentials タブに移動し、Client secret をコピーします。
  9. 次のステップのために、クライアント ID とクライアントシークレットを保存します。
  10. Developer Hub で、Developer Hub シークレットに Keycloak 認証情報を追加します。

    1. secrets-rhdh などの Developer Hub シークレットを編集します。
    2. 以下のキーと値のペアを追加します。

      AUTH_KEYCLOAK_CLIENT_ID
      Keycloak で生成したクライアント ID (RHDH など) を入力します。
      AUTH_KEYCLOAK_CLIENT_SECRET
      Keycloak で生成したクライアントシークレットを入力します。
  11. Developer Hub のカスタム設定で OIDC 認証プロバイダーを設定します。

    1. app-config-rhdh などのカスタム Developer Hub ConfigMap を編集します。
    2. app-config-rhdh.yaml コンテンツで、ルート auth 設定の下に oidc プロバイダー設定を追加し、サインイン用に oidc プロバイダーを有効にします。

      app-config-rhdh.yaml の一部

      auth:
        environment: production
        providers:
          oidc:
            production:
            clientId: ${AUTH_KEYCLOAK_CLIENT_ID}
            clientSecret: ${AUTH_KEYCLOAK_CLIENT_SECRET}
            metadataUrl: ${KEYCLOAK_BASE_URL}/auth/realms/${KEYCLOAK_REALM}
            prompt: ${KEYCLOAK_PROMPT} # recommended to use auto
             Uncomment for additional configuration options #callbackUrl: ${KEYCLOAK_CALLBACK_URL} #tokenEndpointAuthMethod: ${KEYCLOAK_TOKEN_ENDPOINT_METHOD} #tokenSignedResponseAlg: ${KEYCLOAK_SIGNED_RESPONSE_ALG} #scope: ${KEYCLOAK_SCOPE}  If you are using the keycloak-backend plugin, use the preferredUsernameMatchingUserEntityName resolver to avoid a login error.
            signIn:
              resolvers:
                - resolver: preferredUsernameMatchingUserEntityName
      signInPage: oidc

検証

  1. backstage-developer-hub アプリケーションを再起動して変更を適用します。
  2. Developer Hub のサインインページに、Sign in using OIDC と表示されます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.