3.2. Web コンソールを使用してホストされたクラスターの OAuth サーバーを設定する
OpenShift Container Platform Web コンソールを使用して、ホストされたクラスターの内部 OAuth サーバーを設定できます。
サポートされている次のアイデンティティープロバイダーに対して OAuth を設定できます。
-
oidc
-
htpasswd
-
keystone
-
ldap
-
basic-authentication
-
request-header
-
github
-
gitlab
-
google
OAuth 設定にアイデンティティープロバイダーを追加すると、デフォルトの kubeadmin
ユーザープロバイダーが削除されます。
注記
アイデンティティープロバイダーを設定するときは、ホステッドクラスターに少なくとも 1 つの NodePool
レプリカを事前に設定する必要があります。DNS 解決のトラフィックはワーカーノードを介して送信されます。htpasswd
および request-header
アイデンティティープロバイダー用に、NodePool
レプリカを事前に設定する必要はありません。
前提条件
-
cluster-admin
権限を持つユーザーとしてログインしている。 - ホストされたクラスターを作成した。
手順
-
Home
API Explorer に移動します。 -
Filter by kind ボックスを使用して、
HostedCluster
リソースを検索します。 -
編集する
HostedCluster
リソースをクリックします。 - Instances タブをクリックします。
- ホストされたクラスター名エントリーの横にあるオプションメニュー をクリックし、Edit HostedCluster をクリックします。
YAML ファイルに OAuth 設定を追加します。
spec: configuration: oauth: identityProviders: - openID: 1 claims: email: 2 - <email_address> name: 3 - <display_name> preferredUsername: 4 - <preferred_username> clientID: <client_id> 5 clientSecret: name: <client_id_secret_name> 6 issuer: https://example.com/identity 7 mappingMethod: lookup 8 name: IAM type: OpenID
- 1
- このプロバイダー名はアイデンティティー要求の値に接頭辞として付加され、アイデンティティー名が作成されます。プロバイダー名はリダイレクト URL の構築にも使用されます。
- 2
- メールアドレスとして使用する属性のリストを定義します。
- 3
- 表示名として使用する属性のリストを定義します。
- 4
- 優先ユーザー名として使用する属性のリストを定義します。
- 5
- OpenID プロバイダーに登録されたクライアントの ID を定義します。このクライアントを URL
https://oauth-openshift.apps.<cluster_name>.<cluster_domain>/oauth2callback/<idp_provider_name>
にリダイレクトできるようにする必要があります。 - 6
- OpenID プロバイダーに登録されたクライアントのシークレットを定義します。
- 7
- OpenID の仕様で説明されている Issuer Identifier。クエリーまたはフラグメントコンポーネントのない
https
を使用する必要があります。 - 8
- このプロバイダーのアイデンティティーと
User
オブジェクトの間でマッピングを確立する方法を制御するマッピング方法を定義します。
- Save をクリックします。
関連情報
- サポートされているアイデンティティープロバイダーの詳細は、認証および認可 の アイデンティティープロバイダー設定について を参照してください。