12.4.9. OpenShift 4
OpenShift 4 アイデンティティープロバイダーを設定する前に、正しい OpenShift 4 API URL を確認してください。シナリオによっては、その URL はユーザーから非表示にされる可能性があります。このコマンドを取得する最も簡単な方法は、コマンド curl -s -k -H "Authorization: Bearer $(oc whoami -t)" https://<openshift-user-facing-api-url>/apis/config.openshift.io/v1/infrastructures/cluster | jq ".status.apiServerURL" を実行することです (これには jq コマンドを個別にインストールすることが必要になる場合があります)。多くの場合、アドレスは HTTPS によって保護されます。そのため、コンテナーで X509_CA_BUNDLE を設定し、これを /var/run/secrets/kubernetes.io/serviceaccount/ca.crt に設定する必要があります。それ以外の場合は、Red Hat Single Sign-On は API サーバーと通信できません。
OpenShift 4 でログインを有効にするためにには、いくつかの手順を実行する必要があります。まず、左側のメニュー項目 Identity Providers に移動し、Add provider ドロップダウンリストから OpenShift v4 を選択します。これにより、Add identity provider ページが表示されます。
ID プロバイダーの追加
OAuth クライアントの登録
oc コマンドラインツールを使用してクライアントを登録できます。
- 1
- OAuth クライアントの
名前。<openshift_master>/oauth/authorizeおよび<openshift_master>/oauth/tokenへの要求の実行時にclient_id要求パラメーターとして渡されます。nameパラメーターは、OAuthClientオブジェクトと Red Hat Single Sign-On 設定で同じである必要があります。 - 2
secretはclient_secret要求パラメーターとして使用されます。- 3
<openshift_master>/oauth/authorizeおよび<openshift_master>/oauth/tokenへの要求で指定されるredirect_uriパラメーターは、redirectURIsのいずれかの URI と同じ (または接頭辞が付けられた) 必要があります。これを正しく設定する最も簡単な方法は、Red Hat Single Sign-On OpenShift 4 Identity Provider 設定ページから (Redirect URIフィールド) コピーすることです。- 4
grantMethodは、このクライアントがトークンを要求し、ユーザーがアクセスを付与していない場合に実行するアクションを判別するために使用されます。
oc create コマンドで定義されるクライアント ID とシークレットを使用して、Red Hat Single Sign-On の Add identity provider ページで再度入力します。Red Hat Single Sign-On に戻り、その項目を指定します。
OpenShift API サーバーは、OAuthClient の name、secret 、または redirectURIs が正しくない場合は、The client is not authorized to request a token using this method を返します。クローンした内容を Red Hat Single Sign-On OpenShift 4 Identity Provider ページに正しくコピーしてください。
詳細ガイドは、公式の OpenShift ドキュメントを参照してください。