Get-AzRoleAssignment

列出指定範圍中的 Azure RBAC 角色指派。 根據預設,它會列出所選 Azure 訂用帳戶中的所有角色指派。 使用個別參數來列出特定使用者的工作分派,或列出特定資源群組或資源上的指派。

Cmdlet 可能會根據輸入參數呼叫下列 Microsoft Graph API:

  • GET /users/{id}
  • GET /servicePrincipals/{id}
  • GET /groups/{id}
  • GET /directoryObjects/{id}
  • POST /directoryObjects/getByIds

請注意,如果找不到角色指派的物件,或目前的帳戶沒有足夠的許可權可取得物件類型,此 Cmdlet 將會標示 ObjectTypeUnknown 輸出中。

Syntax

Get-AzRoleAssignment
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ObjectId <String>
   [-RoleDefinitionName <String>]
   [-ExpandPrincipalGroups]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ObjectId <String>
   -ResourceGroupName <String>
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ObjectId <String>
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ObjectId <String>
   [-RoleDefinitionName <String>]
   -Scope <String>
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   [-ObjectId <String>]
   -RoleDefinitionId <Guid>
   [-Scope <String>]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -SignInName <String>
   -ResourceGroupName <String>
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -SignInName <String>
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -SignInName <String>
   [-RoleDefinitionName <String>]
   -Scope <String>
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -SignInName <String>
   [-RoleDefinitionName <String>]
   [-ExpandPrincipalGroups]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ServicePrincipalName <String>
   -ResourceGroupName <String>
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ServicePrincipalName <String>
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ServicePrincipalName <String>
   [-RoleDefinitionName <String>]
   -Scope <String>
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ServicePrincipalName <String>
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ResourceGroupName <String>
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   [-RoleDefinitionName <String>]
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzRoleAssignment
   [-RoleDefinitionName <String>]
   -Scope <String>
   [-IncludeClassicAdministrators]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

使用 Get-AzRoleAssignment 命令來列出在範圍上生效的所有角色指派。 如果沒有任何參數,此命令會傳回訂用帳戶下所做的所有角色指派。 您可以使用主體、角色和範圍的篩選參數來篩選此清單。 必須指定指派的主旨。 若要指定使用者,請使用 SignInName 或 Microsoft Entra ObjectId 參數。 若要指定安全組,請使用 Microsoft Entra ObjectId 參數。 若要指定 Microsoft Entra 應用程式,請使用 ServicePrincipalName 或 ObjectId 參數。 指派的角色必須使用 RoleDefinitionName 參數來指定。 可以指定授與存取權的範圍。 默認為選取的訂用帳戶。 您可以使用下列其中一個參數組合來指定指派的範圍。 範圍 - 這是以 /subscriptions/<subscriptionId> 開頭的完整範圍。 這會篩選在特定範圍有效的工作分派,亦即該範圍和更新版本的所有指派。 b. ResourceGroupName - 訂用帳戶下任何資源群組的名稱。 這會篩選指定資源群組 c 的有效指派。 ResourceName、ResourceType、ResourceGroupName 和 (選擇性) ParentResource - 識別訂用帳戶底下的特定資源,並篩選在該資源範圍有效的指派。 若要判斷特定使用者在訂用帳戶中擁有的存取權,請使用 ExpandPrincipalGroups 參數。 這會列出指派給使用者的所有角色,以及指派給用戶所屬的群組。 使用 IncludeClassic 管理員 istrators 參數也會顯示訂用帳戶管理員和共同管理員。

範例

範例 1

Get-AzRoleAssignment

列出訂用帳戶中的所有角色指派

範例 2

Get-AzRoleAssignment -ResourceGroupName testRG -SignInName john.doe@contoso.com

取得對使用者 john.doe@contoso.com所做的所有角色指派,以及他所屬的群組,位於testRG範圍或更新版本。

範例 3

Get-AzRoleAssignment -ServicePrincipalName "http://testapp1.com"

取得指定服務主體的所有角色指派

範例 4

Get-AzRoleAssignment -Scope "/subscriptions/96231a05-34ce-4eb4-aa6a-70759cbb5e83/resourcegroups/rg1/providers/Microsoft.Web/sites/site1"

取得 『site1』 網站範圍的角色指派。

參數

-DefaultProfile

用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExpandPrincipalGroups

如果指定,則傳回直接指派給使用者的角色,以及使用者所屬群組的角色(可轉移)。 僅支援用戶主體。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeClassicAdministrators

如果指定,也會列出訂用帳戶傳統系統管理員(共同管理員、服務管理員等)角色指派。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ObjectId

使用者、群組或服務主體的 Microsoft Entra ObjectId。 篩選對指定主體所做的所有指派。

Type:String
Aliases:Id, PrincipalId
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ParentResource

使用 ResourceName 參數指定之資源階層中的父資源。 必須與 ResourceGroupName、ResourceType 和 ResourceName 參數搭配使用。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

資源組名。 列出在指定資源群組上生效的角色指派。 搭配 ResourceName、ResourceType 和 ParentResource 參數使用時,命令會列出資源群組內資源的有效指派。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceName

資源名稱。 例如 storageaccountprod。 必須與 ResourceGroupName、ResourceType 和 (選擇性)ParentResource 參數搭配使用。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceType

資源類型。 例如 Microsoft.Network/virtualNetworks。 必須與 ResourceGroupName、ResourceName 和 (選擇性)ParentResource 參數搭配使用。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RoleDefinitionId

指派給主體的角色標識碼。

Type:Guid
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RoleDefinitionName

指派給主體的角色,例如讀者、參與者、虛擬網絡 管理員 istrator 等。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Scope

角色指派的範圍。 以相對 URI 的格式。 例如 /subscriptions/9004a9fd-d58e-48dc-aeb2-4a4aec58606f/resourceGroups/TestRG。 它必須以 “/subscriptions/{id}” 開頭。 命令會篩選在該範圍生效的所有指派。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ServicePrincipalName

服務主體的 ServicePrincipalName。 篩選對指定之 Microsoft Entra 應用程式所做的所有指派。

Type:String
Aliases:SPN
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SignInName

用戶的電子郵件地址或用戶主體名稱。 篩選對指定使用者所做的所有指派。

Type:String
Aliases:Email, UserPrincipalName
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SkipClientSideScopeValidation

如果指定,請略過客戶端範圍驗證。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

String

Guid

輸出

PSRoleAssignment

備註

關鍵詞:azure, azurerm, arm, 資源, 管理, 管理員, 資源, 群組, 範本, 部署