首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何获取对应用程序服务的Azure MSI的引用?

如何获取对应用程序服务的Azure MSI的引用?
EN

Stack Overflow用户
提问于 2017-09-21 22:53:26
回答 2查看 2.1K关注 0票数 2

我一直在测试最近发布的适用于Azure的托管服务标识,并使用以下文档中描述的ARM模板方法成功地为我们的应用服务创建了托管服务标识:How to use Azure Managed Service Identity (public preview) in App Service and Azure Functions

但是,我想授予对其他资源(如密钥库)的托管身份的访问权限。我已经能够通过门户做到这一点,但需要能够在PowerShell中编写脚本,以便与我们的持续部署构建集成。

我已经通过执行Set-AzureRmKeyVaultAccessPolicy cmdlet使用PowerShell成功创建了访问。然而,我只能使用硬编码的对象id完成此操作,一旦创建了MSI,就从门户网站手动复制和粘贴。

我的问题是,在PowerShell中,我如何才能获得对MSI的对象id的引用,以便我可以授予对其他资源的访问权限?我能找到的唯一示例(如this one)仅涉及虚拟机,而不涉及应用程序服务。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-22 10:46:12

您可以使用Get-AzureADServicePrincipal

代码语言:javascript
复制
$web=Get-AzureADServicePrincipal -SearchString "<name>"
$web.ObjectId

默认情况下,该名称是您的web应用程序名称。

更新:

对于OP的场景,我们可以使用template来获取对Azure MSI的引用。

票数 2
EN

Stack Overflow用户

发布于 2019-06-13 21:01:34

使用最新的AzureRM模块(6.13.1)

代码语言:javascript
复制
$AppProp = Get-AzureRmWebApp -ResourceGroupName $resourceGroupName -Name $name

写入-输出$AppProp.Identity

此Identity属性提供有关MSI的所有必需详细信息。

代码语言:javascript
复制
Type        : SystemAssigned

TenantId    : c764619f-8856-4a9f-a81e-eeb0c3f93592

PrincipalId : 3d317dfe-5589-4aae-94a4-51f1776979a7
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46347139

复制
相关文章

相似问题

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