Open OnDemand フロントエンドは、認証に Open ID Connect (OIDC) を使用します。 OIDC プロバイダーは、登録する必要がある Microsoft Entra ID アプリケーションです。 このアプリケーションは、Open OnDemand 構成にシークレットを格納しないように、ユーザー割り当てマネージド ID を持つフェデレーション資格情報を使用します。 次の手順では、Open OnDemand 認証用に Microsoft Entra ID アプリケーションを登録する方法について説明します。
デプロイが成功した直後の Microsoft Entra ID アプリケーションの登録
デプロイが完了したら、Azure CLI がインストールされた Linux シェルから次のコマンドを実行して、認証用に Microsoft Entra ID アプリケーションを登録して構成します。 CLI にサインインするアカウントには、アプリケーションを登録するための適切なアクセス許可が必要です。 アクティブなサブスクリプションがまだ設定されていない場合は、デプロイに使用したサブスクリプションであることを確認します。
Von Bedeutung
デプロイ用に指定された Azure アカウントで Azure CLI がインストールされ、認証されている Linux シェルから次のコマンドを実行します。 このシナリオでは、Azure Cloud Shell はサポートされていません。
注
JSON 処理用のコマンド ライン ツール jq
がシステムにインストールされていることを確認します。
resource_group=<resource_group_name>
az deployment group create -g $resource_group --template-uri https://raw.githubusercontent.com/Azure/cyclecloud-slurm-workspace/refs/heads/main/bicep/ood/oodEntraApp.json --parameters "$(az deployment group show -g $resource_group -n pid-d5d2708b-a4ef-42c0-a89b-b8bd6dd6d29b-partnercenter --query properties.outputs | jq '.oodManualRegistration.value | with_entries(.value |= {value: .})')"
コマンドを実行するときに、アプリケーションが登録されていることを確認し、そのクライアント ID をコピーします。
認証のリダイレクト URI が正しいこと、フェデレーション資格情報が設定されていること、 upn
トークン構成の省略可能な要求、および API アクセス許可が存在することを確認します。
デプロイが成功した後に既存の Microsoft Entra ID アプリケーションを更新する
Microsoft Entra ID アプリケーションを既に登録している場合は、Open OnDemand 仮想マシンのプライベート IP または FQDN でリダイレクト URI を更新します。
ccw
クラスターとOpenOnDemand
クラスターの両方が実行されていることを確認します。 一時的なエラーが発生する可能性がありますが、両方のクラスターは数分以内に準備ができているはずです。
アプリケーションの認証設定に新しいリダイレクト URI https://\<ip\>/oidc
を追加して、構成を完了します。
展開前に Microsoft Entra ID アプリケーションを登録する
完全な環境をデプロイする前に Microsoft Entra ID アプリケーションを登録し、後で構成することができます。
次を含む app.json
パラメーター ファイルを作成します。
- appName : 登録するアプリケーションの名前。
- fqdn: Open OnDemand 仮想マシンの IP アドレスまたは完全修飾ドメイン名 (FQDN) (後で変更できるため、この値を一時的に設定できます)
- umiName: Open OnDemand 仮想マシンに割り当てられたフェデレーション ID 資格情報用に作成するユーザー割り当てマネージド ID の名前。
{
"appName": {
"value": ""
},
"fqdn": {
"value": ""
},
"umiName": {
"value": ""
}
}
次のコマンドを実行して、リソース グループとユーザー割り当てマネージド ID を作成し、Microsoft Entra ID アプリケーションを登録します。
resource_group=<the_resource_group_you_deployed_in>
location=<location>
az group create -l $location -n $resource_group
az identity create --name $(jq -r '.umiName.value' app.json) --resource-group $resource_group --location $location
az deployment group create -g $resource_group --template-uri https://raw.githubusercontent.com/Azure/cyclecloud-slurm-workspace/refs/heads/main/bicep/ood/oodEntraApp.json --parameters @app.json