gpt4 book ai didi

azure - 获取启用 MSI 的应用服务的 AAD 应用程序 ID 的最简单方法是什么

转载 作者:行者123 更新时间:2023-12-03 01:37:21 24 4
gpt4 key购买 nike

我部署了一个启用了 MSI 的应用服务(具有系统分配的标识)。此应用程序服务将使用 MSI 检索 AAD 保护的 Web API 的访问 token 。 Web API将从 token 中检索appid,并根据预先配置的白名单检查appid,如果appid不在白名单中,则访问被拒绝。

因此,为了允许启用 MSI 的应用服务访问 Web API,我需要知道 MSI 应用服务的应用程序 ID 并将其添加到白名单中。

我知道我可以在应用程序服务调试控制台中运行以下 powershell 脚本来检索 token 并通过解码 token 来获取 appid。

$apiVersion = "2017-09-01"
$resourceURI = "<resource uri of AAD protected Web API>"
$tokenAuthURI = $env:MSI_ENDPOINT + "?resource=$resourceURI&api-version=$apiVersion"
$tokenResponse = Invoke-RestMethod -Method Get -Headers @{"Secret"="$env:MSI_SECRET"} -Uri $tokenAuthURI
$accessToken = $tokenResponse.access_token

但我想知道是否有更简单的方法来获取 MSI 应用程序服务的 appid,而无需检索 token 。

最佳答案

您可以使用 (Get-AzADServicePrincipal -ObjectId xxxx).ApplicationId,当您在 Web 应用门户上检查时,很容易找到对象 ID。

enter image description here

enter image description here

您还可以通过应用程序 ID 在企业应用程序中搜索该应用程序。 enter image description here

关于azure - 获取启用 MSI 的应用服务的 AAD 应用程序 ID 的最简单方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56968651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com