CLI をローカルにインストールして使用する場合、このチュートリアルでは、Azure CLI バージョン 2.6.0 以降を実行している必要があります。 バージョンを確認するには、az --version
を実行します。 インストールまたはアップグレードが必要な場合は、Azure CLI のインストールを参照してください。
開始する前に
クラスターの OAuth コールバック URL を 構築し、メモしておきます。 aro-rg はリソース グループの名前に、aro-cluster はクラスターの名前に置き換えてください。
注
OAuth コールバック URL の AAD
セクションは、後でセットアップする OAuth ID プロバイダー名と一致している必要があります。
domain=$(az aro show -g aro-rg -n aro-cluster --query clusterProfile.domain -o tsv)
location=$(az aro show -g aro-rg -n aro-cluster --query location -o tsv)
echo "OAuth callback URL: https://oauth-openshift.apps.$domain.$location.aroapp.io/oauth2callback/AAD"
認証のために Microsoft Entra アプリケーションを作成します。
Azure portal にログインし、[ アプリの登録] ブレードに移動し、[ 新しい登録 ] をクリックして新しいアプリケーションを作成します。
aro-azuread-auth などのアプリケーションの名前を指定し、前に取得した OAuth コールバック URL の値を使用してリダイレクト URI を入力します。
[証明書とシークレット] に移動し、[新しいクライアント シークレット] をクリックし、詳細を入力します。 後のステージで使用するので、キー値を書き留めます。 もう一度取得することはできません。
[概要] に移動し、アプリケーション (クライアント) ID とディレクトリ (テナント) ID を書き留めます。 後の段階で必要になります。
オプションクレームの設定
アプリケーション開発者は、Microsoft Entra アプリケーションで省略可能な要求を使用して、アプリケーションに送信されるトークンに含める要求を指定できます。
次の処理に省略可能な要求を使用できます。
- アプリケーションのトークンに含める追加の要求を選択する。
- Microsoft Entra ID からトークンで返される特定の要求の動作を変更する。
- アプリケーションのカスタムの要求を追加してアクセスする。
Microsoft Entra ID によって返される ID トークンの一部として email
を追加することで、OpenShift で upn
要求を使用し、upn
にフォールバックして推薦ユーザー名を設定するよう構成します。
[トークンの構成] に移動し、[省略可能な要求の追加] をクリックします。 ID を選択し、電子メール と UPNクレーム を確認します。
ユーザーとグループをクラスターに割り当てる (省略可能)
Microsoft Entra テナントに登録されたアプリケーションは、既定ではテナントの正常に認証されたすべてのユーザーが利用できます。 Microsoft Entra ID により、テナントの管理者と開発者が、テナントのユーザーまたはセキュリティ グループの特定のセットにアプリを制限できるようになります。
Microsoft Entra のドキュメントに記載されている手順に従って、ユーザーとグループをアプリに割り当てます。
OpenShift OpenID 認証の構成
kubeadmin
の資格情報を取得します。 次のコマンドを実行して、kubeadmin
ユーザーのパスワードを調べます。
az aro list-credentials \
--name aro-cluster \
--resource-group aro-rg
次の出力例は、パスワードが kubeadminPassword
されることを示しています。
{
"kubeadminPassword": "<generated password>",
"kubeadminUsername": "kubeadmin"
}
次のコマンドを実行すると、クラスター コンソールの URL が見つかります。次のようになります。 https://console-openshift-console.apps.<random>.<region>.aroapp.io/
az aro show \
--name aro-cluster \
--resource-group aro-rg \
--query "consoleProfile.url" -o tsv
ブラウザーでコンソールの URL にアクセスし、kubeadmin
資格情報を使用してログインします。
[管理] に移動し、[クラスターの設定] をクリックし、[構成] タブを選択します。スクロールして OAuth を選択します。
下にスクロールして、[ID プロバイダー] の下にある [追加] を選択し、[OpenID Connect] を選択します。
Microsoft Entra ID を名前として、アプリケーション ID を クライアント ID として、クライアント シークレット をそれぞれ入力してください。
発行者の URL は、次のように書式設定されます: https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/v2.0
。 プレースホルダーを、前に取得したテナント ID に置き換えます。
[ 要求 ] セクションまで下にスクロールし、[ 優先ユーザー名] を 更新して、 upn 要求の値を使用します。
Microsoft Entra ID によってログインを検証する
OpenShift Web コンソールからログアウトし、もう一度ログインしようとすると、 Microsoft Entra ID でログインするための新しいオプションが表示されます。 数分待つ必要がある場合があります。
注
"AADSTS50011: 要求で指定されたリダイレクト URI https://oauth-openshift.apps.xxxxxxxxxx.xxxxxxx.aroapp.io/oauth2callback/xxxx が、構成されているリダイレクト URI と一致しません" のようなエラーが発生した場合は、トラブルシューティング ガイドに従って、 リダイレクト URI が正しく設定されていない場合に Azure AD (OIDC) ログインに失敗 して問題を解決できます。