【问题标题】:Retrieve application permissions of a service principal using the AzureAD module使用 AzureAD 模块检索服务主体的应用程序权限
【发布时间】:2017-02-15 08:37:47
【问题描述】:

使用 AzureAD 模块,我可以使用Get-AzureADServicePrincipalOAuth2PermissionGrant cmdlet 检索服务主体的所有委派权限。但是,我找不到类似的 cmdlet 来检索此模块中服务主体的 应用程序权限

AzureAD 模块是否提供了一种方法来检索服务主体的应用程序权限

【问题讨论】:

    标签: powershell azure azure-active-directory


    【解决方案1】:

    应用程序权限分配在目录中表示为 appRoleAssignments。将角色分配给应用的服务主体。

    使用 V2 模块:

    有两种方法可以获取角色。

    已为委托人 A 分配了哪些权限?

    Get-AzureADServiceAppRoleAssignedTo -ObjectId eea0d6cd-20e2-4b81-97ca-5b0cbffac985 | fl
    

    在这里我得到了分配给这个主体的应用权限。

    谁拥有委托人 A 的权限?

    Get-AzureADServiceAppRoleAssignment -ObjectId f004dde9-b40f-4259-91be-e257009a444a | fl
    

    这里的对象 ID 用于 Microsoft Graph。它列出了所有被分配了任何应用程序权限的主体。

    无论哪种方式,您仍然可以获得 AppRoleAssignments 列表。

    • Id = 分配的 AppRole 的 ID
    • PrincipalId = 权限分配给的服务主体的 ObjectId
    • ResourceId = 提供权限的服务主体的 ObjectId

    您需要自己以正确的角色加入任务。您可以打印出应用角色,例如MS Graph 很容易提供:

    $msGraph = Get-AzureADServicePrincipal -ObjectId f004dde9-b40f-4259-91be-e257009a444a
    $msGraph.AppRoles | fl
    

    例子:

    AllowedMemberTypes : {Application}
    Description        : (Preview) Allows the app to read all files in all site collections without a signed in user.
    DisplayName        : Read files in all site collections (preview)
    Id                 : 01d4889c-1287-42c6-ac1f-5d1e02578ef6
    IsEnabled          : True
    Value              : Files.Read.All
    

    【讨论】:

    • 看来你对我所有的问题都有答案了 ;-)
    • 只需要每天使用 AAD 就可以了 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-31
    • 1970-01-01
    • 1970-01-01
    • 2020-12-27
    • 2013-04-16
    • 2020-12-29
    • 2020-05-28
    相关资源
    最近更新 更多