首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获取登录用户的Azure AD objectid?

如何获取登录用户的Azure AD objectid?
EN

Stack Overflow用户
提问于 2018-08-16 14:16:30
回答 5查看 10.5K关注 0票数 14

我正在尝试调用一个ARM模板,该模板需要当前登录用户的PrincipalId。

https://docs.microsoft.com/en-us/azure/templates/microsoft.keyvault/vaults

我使用powershell登录,作为组织的AAD中的访客帐户。当我检查产生的上下文时,我得到:

代码语言:javascript
复制
Name             : [sky.sigal@ministryof.me, 5f813400-5b93-43b0-af8f-5fd04714f1ef]
Account          : me@here.com
SubscriptionName : SomeSubscriptionName
TenantId         : e6d2d4cc-b762-486e-8894-4f5f540d5f31
Environment      : AzureCloud

我想知道如何从上面获得AAD名称,而不是字符串解析“ObjectId”?

注意,ARM模板的文档不是很清楚,所以不确定me@here.com是否也能正常工作(我假设它说的是Guid)。

谢谢。

EN

回答 5

Stack Overflow用户

发布于 2019-08-22 16:51:31

您也可以使用azure cli获取它。

代码语言:javascript
复制
az ad signed-in-user show --query objectId -o tsv
票数 17
EN

Stack Overflow用户

发布于 2018-08-16 15:47:21

您可以尝试使用Get-AzureRmADUser来获取ObjectId

示例:

代码语言:javascript
复制
Get-AzureRmADUser -UserPrincipalName "xxxx@xxxx.com"

结果:

Id就是ObjectId,你可以得到它。此外,您还可以通过其他属性获取它,不仅仅是-UserPrincipalName,只需参考命令的链接即可。

更新

如果您使用Guest帐户,您可以尝试下面的命令。

代码语言:javascript
复制
Get-AzureADUser | ?{$_.UserType -eq "Guest"} | ?{$_.UserPrincipalName -like "*partofyouraccount*"}

注意:在使用此命令之前,您需要install Azure AD powershell module

票数 2
EN

Stack Overflow用户

发布于 2021-03-16 03:01:26

您看到的关于"Name“的信息与订阅相关。使用以下命令获取“objectId”下的帐户:

代码语言:javascript
复制
(Get-AzContext).Account.ExtendedProperties.HomeAccountId.Split('.')[0]
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51870679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档