web-dev-qa-db-ja.com

サインインしたユーザーのAzureADオブジェクトIDを取得するにはどうすればよいですか?

現在サインインしているユーザーの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について話していると想定しています)。

ありがとうございました。

6
user9314395

Get-AzureRmADUser を試してObjectIdを取得できます。

サンプル:

Get-AzureRmADUser -UserPrincipalName "[email protected]"

結果:

enter image description here

IdObjectIdです、あなたはそれを得ることができます。また、-UserPrincipalNameだけでなく、コマンドのリンクを参照するだけで、他のプロパティを介して取得することもできます。

更新

Guestアカウントを使用する場合は、以下のコマンドを試すことができます。

Get-AzureADUser | ?{$_.UserType -eq "Guest"} | ?{$_.UserPrincipalName -like "*partofyouraccount*"}

enter image description here

:このコマンドを使用する前に、次のことを行う必要があります Azure AD powershellモジュールをインストールする

1
Joy Wang

AzureCLIを使用して取得することもできます

az ad signed-in-user show --query objectId -o tsv
0
Lolorol