現在サインインしているユーザーのPrincipalIdを必要とするARMテンプレートを呼び出そうとしています。
https://docs.Microsoft.com/en-us/Azure/templates/Microsoft.keyvault/vaults
組織のAADのゲストアカウントとして、PowerShellを使用してサインインしました。結果のコンテキストを確認すると、次のようになります。
Name : [[email protected], 5f813400-5b93-43b0-af8f-5fd04714f1ef]
Account : [email protected]
SubscriptionName : SomeSubscriptionName
TenantId : e6d2d4cc-b762-486e-8894-4f5f540d5f31
Environment : AzureCloud
「名前」を文字列解析せずに、上記からAAD ObjectIdを取得する方法を知りたいですか?
ARMテンプレートのドキュメントはあまり明確ではないため、me @ here.comが同様に機能するかどうかはわかりません(Guidについて話していると想定しています)。
ありがとうございました。
Get-AzureRmADUser
を試してObjectId
を取得できます。
サンプル:
Get-AzureRmADUser -UserPrincipalName "[email protected]"
結果:
Id
はObjectId
です、あなたはそれを得ることができます。また、-UserPrincipalName
だけでなく、コマンドのリンクを参照するだけで、他のプロパティを介して取得することもできます。
更新:
Guest
アカウントを使用する場合は、以下のコマンドを試すことができます。
Get-AzureADUser | ?{$_.UserType -eq "Guest"} | ?{$_.UserPrincipalName -like "*partofyouraccount*"}
注:このコマンドを使用する前に、次のことを行う必要があります Azure AD powershellモジュールをインストールする 。
AzureCLIを使用して取得することもできます
az ad signed-in-user show --query objectId -o tsv