gpt4 book ai didi

azure - 为什么 Azure 托管标识显示为无效资源 ID

转载 作者:行者123 更新时间:2023-12-03 02:19:20 24 4
gpt4 key购买 nike

我正在尝试使用 Azure Key Vault 存储我的 Web 应用程序的连接字符串。

我的第一步是为我的应用服务创建托管身份。

enter image description here

完成此操作并获得可用的对象 ID 后,我导航到我的 key 保管库并授予先前的身份权限以获取和列出 secret

当我导航到 key 保管库 secret 时,我得到以下信息:

enter image description here

对我来说,这与我刚刚设定的内容相矛盾。我有列表权限。此外,使用以下命令在 CLI 中检查创建的托管身份:

az identity show --ids b38196d2-be05-4681-b93a-828d4cd63034
invalid resource ID: b38196d2-be05-4681-b93a-828d4cd63034

Web 应用服务与数据库/服务器位于资源组中。 key 保管库位于另一个资源组中。对于我的 CI/dev,我使用以下方法创建了一个服务主体:

az ad sp create-for-rbac -n appx --role contributor --scopes "/subscriptions/d95201ae-f361-4c30-a527-581695bfab01/resourceGroups/example-resources" --sdk-auth

并将输出存储在我的 github secret 中作为 AZURE_CREDENTIALS。这效果很好。我的网络应用程序也是如此,测试连接字符串仍在 appsettings.json 中。

我不明白我的托管身份出了什么问题。

最佳答案

正如 AnsumanBal-MT 提到的(回到您在问题中提到的内容),据我们所知,您仅将 WebApp 的身份添加到 KV 的 secret 访问策略中。您没有将自己的用户主体添加到 KV 的 secret 策略中 - 这就是您看到该错误的原因,该错误表明您无权查看内容。 AppService 已被允许,但您不允许。

您在下面看到的此错误是因为您没有正确使用该命令。它将身份的对象 ID 作为参数。

az identity show --ids b38196d2-be05-4681-b93a-828d4cd63034
invalid resource ID: b38196d2-be05-4681-b93a-828d4cd63034

查看az identity documentation ,您需要解析 AppService 的完整资源 ID,您可以在 WebApp 的属性部分找到该 ID。

例如:

az identity show --ids /subscriptions/mysubscription/resourceGroups/myrg/providers/Microsoft.Web/sites/myapp

关于azure - 为什么 Azure 托管标识显示为无效资源 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69653453/

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