29.5. Red Hat Single Sign-On サーバー (Keycloak) と組み合わせてサービスディスカバリーを設定する
システム管理者は、ユーザーが Red Hat single sign-on for OpenShift を使用して、個別に認証、3scale を承認してサービスを検出するのを許可します。
OpenShift の承認ゲートウェイとして Red Hat Single Sign-On デプロイメントを使用する OpenShift の設定例は、この ワークフロー を参照してください。
前提条件
- OpenShift Container Platform (OCP) 4.x クラスターに 3scale 2.15 をデプロイした。
- 3scale でサービスディスカバリーを使用する 3scale ユーザーは、OpenShift クラスターにアクセスできる必要があります。
手順
Red Hat OAuth サーバー (Keycloak) に、3scale 用の OAuth クライアントを作成します。
注記クライアント設定で、OpenShift がアカウントをリンクすることができるように、
usernameがpreferred_usernameにマッピングされていることを確認します。3scale サービスディスカバリーの設定を編集します。
oc project <3scale-project> oc edit configmap system
$ oc project <3scale-project> $ oc edit configmap systemCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のように設定されていることを確認します。ここで、
<the-client-secret-from-Keycloak>は、OAuth クライアントの作成時に Keycloak が自動生成した値です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ユーザーが適切なアクセス権限を持ち、検出可能なサービスが含まれるクラスタープロジェクトを表示できるようにしてください。
たとえば、
<user>に<namespace>プロジェクトを表示する権限を付与するには、以下のコマンドを使用します。oc adm policy add-role-to-user view <user> -n <namespace>
$ oc adm policy add-role-to-user view <user> -n <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
configmapを変更したら、system-appおよびsystem-sidekiqPod を再デプロイし、変更を適用する必要があります。