【问题标题】:How to view list of azure subscriptions a Service principal has contributor access to?如何查看服务主体具有贡献者访问权限的 azure 订阅列表?
【发布时间】:2021-06-30 10:15:29
【问题描述】:

我有一个 SPN/AppRegistration,它可以访问订阅 1、2。

外部服务将使用此 SPN 来访问订阅 1、2 以部署资源。

此外部服务如何列出 SPN 具有贡献者访问权限的所有订阅?

【问题讨论】:

    标签: azure azure-devops azure-active-directory azure-sdk azure-service-principal


    【解决方案1】:

    没有一个端点可以列出 Azure Rest API 中 SPN 的所有订阅。

    检查 SPN 有权访问哪些订阅的最快方法是使用 Azure CLI

    使用 SPN 登录:

    az login --service-principal --username APP_ID --password PASSWORD --tenant TENANT_ID
    

    然后将列出 SPN 有权访问的所有订阅。

    但它不会显示角色名称“贡献者”。因此,只需确保 SPN 没有“贡献者”以外的任何角色。

    如果 SPN 的角色不是订阅的“贡献者”,则订阅也会在此处列出。在这种情况下,请在 Powershell 中选择订阅,然后使用az role assignment list --query "[?principalName=='{SPN_name}'].roleDefinitionName" 查看其在此订阅中的作用。

    【讨论】:

    • 这也可以通过 SDK 以编程方式完成吗?
    猜你喜欢
    • 1970-01-01
    • 2016-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 1970-01-01
    • 2020-12-27
    • 2018-07-26
    相关资源
    最近更新 更多