10.2. RH SSO を使用した設定
Red Hat Single Sign On (RH SSO) を設定する場合は、次の点を考慮してください。
- ユーザーは OAuth サーバーにリダイレクトされます。
- ユーザーが OAuth サーバーにログインしていない場合、ログインするための認証情報を入力するよう求めるメッセージが表示されます。
- SSO で 3scale Service Discovery 機能を初めて使用する場合、OAuth サーバーは、関連するアクションを実行するために 3scale を承認するように要求します。
- それらは 3scale にリダイレクトされます。
RH SSO でサービス検出機能を設定するには、次のオプションがあります。
10.2.1. OpenShift OAuth サーバーの使用
システム管理者として、OpenShift 組み込み OAuth サーバーを使用して、3scale がユーザーに代わって API を検出できるように、ユーザーを個別に認証および承認する必要があります。これは、Service Discovery を使用する意思のある 3scale テナント管理者ユーザーは、OpenShift ユーザーでもある必要があり、おそらくそれらの間でクラスターに対する異なるアクセスレベルを持つ必要があることを意味します。
3scale 用の OpenShift OAuth クライアントを作成します。OpenShift の認証の詳細は、OAuth Clients を参照してください。
$ oc project default $ cat <<-EOF | oc create -f - kind: OAuthClient apiVersion: v1 metadata: name: 3scale secret: "<choose-a-client-secret>" redirectURIs: - "<3scale-master-domain-route>" grantMethod: prompt EOF
3scale サービスディスカバリーの設定を編集します。
$ oc project <3scale-project> $ oc edit configmap system
次の設定を設定する必要があります。
service_discovery.yml: production: enabled: true authentication_method: oauth oauth_server_type: builtin client_id: '3scale' client_secret: '<choose-a-client-secret>'
- ユーザーが適切なアクセス権限を持ち、検出可能なサービスが含まれるクラスタープロジェクトを表示できるようにしてください。
その他の注意事項:
-
configmap
を変更したら、system-app
およびsystem-sidekiq
Pod を再デプロイし、変更を適用する必要があります。 - トークンの有効期間: デフォルトでは、OpenShift トークンオプション に示されているように、OpenShift OAuth セッショントークンは 24 時間後に期限切れになります。