Udostępnij za pomocą


Wyświetlanie listy przypisań ról platformy Azure przy użyciu programu Azure PowerShell

Kontrola dostępu oparta na rolach (RBAC) platformy Azure to system autoryzacji używany do zarządzania dostępem do zasobów platformy Azure. Aby określić, do jakich zasobów mają dostęp użytkownicy, grupy, jednostki usługi lub tożsamości zarządzane, należy wyświetlić listę ich przypisań ról. W tym artykule opisano sposób wyświetlania listy przypisań ról przy użyciu programu Azure PowerShell.

Uwaga / Notatka

Zalecamy użycie modułu Azure Az PowerShell do interakcji z Azure. Aby rozpocząć, zobacz Instalowanie programu Azure PowerShell. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Uwaga / Notatka

Jeśli Twoja organizacja udostępnia funkcje zarządzania dostawcy usług, który korzysta z usługi Azure Lighthouse, przypisania ról autoryzowane przez tego dostawcę usług nie będą wyświetlane tutaj. Podobnie użytkownicy w dzierżawie dostawcy usług nie będą widzieć przypisań ról dla użytkowników w dzierżawie klienta, niezależnie od przypisanej roli.

Wymagania wstępne

Wyświetl listę przypisań ról dla bieżącej subskrypcji

Najprostszym sposobem uzyskania listy wszystkich przypisań ról w bieżącej subskrypcji (w tym odziedziczonych przypisań ról z grup głównych i grup zarządzania) jest użycie polecenia Get-AzRoleAssignment bez żadnych parametrów.

Get-AzRoleAssignment
PS C:\> Get-AzRoleAssignment

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/11111111-1111-1111-1111-111111111111
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000
DisplayName        : Alain
SignInName         : alain@example.com
RoleDefinitionName : Storage Blob Data Reader
RoleDefinitionId   : 2a2b9908-6ea1-4ae2-8e65-a410df84e7d1
ObjectId           : 44444444-4444-4444-4444-444444444444
ObjectType         : User
CanDelegate        : False

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales/providers/Microsoft.Authorization/roleAssignments/33333333-3333-3333-3333-333333333333
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName        : Marketing
SignInName         :
RoleDefinitionName : Contributor
RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
ObjectId           : 22222222-2222-2222-2222-222222222222
ObjectType         : Group
CanDelegate        : False

...

Lista przypisań ról dla subskrypcji

Aby wyświetlić listę wszystkich przypisań ról w zakresie subskrypcji, użyj polecenia Get-AzRoleAssignment. Aby uzyskać identyfikator subskrypcji, możesz go znaleźć w bloku Subskrypcje w witrynie Azure Portal lub użyć polecenia Get-AzSubscription.

Get-AzRoleAssignment -Scope /subscriptions/<subscription_id>
PS C:\> Get-AzRoleAssignment -Scope /subscriptions/00000000-0000-0000-0000-000000000000

Wyświetlanie listy przypisań ról dla użytkownika

Aby wyświetlić listę wszystkich ról przypisanych do określonego użytkownika, użyj polecenia Get-AzRoleAssignment.

Get-AzRoleAssignment -SignInName <email_or_userprincipalname>
PS C:\> Get-AzRoleAssignment -SignInName isabella@example.com | FL DisplayName, RoleDefinitionName, Scope

DisplayName        : Isabella Simonsen
RoleDefinitionName : BizTalk Contributor
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales

Aby wyświetlić listę wszystkich ról przypisanych do określonego użytkownika i ról przypisanych do grup, do których należy użytkownik, użyj polecenia Get-AzRoleAssignment.

Get-AzRoleAssignment -SignInName <email_or_userprincipalname> -ExpandPrincipalGroups
Get-AzRoleAssignment -SignInName isabella@example.com -ExpandPrincipalGroups | FL DisplayName, RoleDefinitionName, Scope

Wyświetl przypisania ról dla grupy zasobów

Aby wyświetlić listę wszystkich przypisań ról w zakresie grupy zasobów, użyj polecenia Get-AzRoleAssignment.

Get-AzRoleAssignment -ResourceGroupName <resource_group_name>
PS C:\> Get-AzRoleAssignment -ResourceGroupName pharma-sales | FL DisplayName, RoleDefinitionName, Scope

DisplayName        : Alain Charon
RoleDefinitionName : Backup Operator
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales

DisplayName        : Isabella Simonsen
RoleDefinitionName : BizTalk Contributor
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales

DisplayName        : Alain Charon
RoleDefinitionName : Virtual Machine Contributor
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales

Lista przypisań ról dla grupy zarządzania

Aby wyświetlić listę wszystkich przypisań ról w zakresie grupy zarządzania, użyj polecenia Get-AzRoleAssignment. Aby uzyskać identyfikator grupy zarządzania, możesz ją znaleźć w bloku Grupy zarządzania w witrynie Azure Portal lub użyć polecenia Get-AzManagementGroup.

Get-AzRoleAssignment -Scope /providers/Microsoft.Management/managementGroups/<group_id>
PS C:\> Get-AzRoleAssignment -Scope /providers/Microsoft.Management/managementGroups/marketing-group

Wyświetlanie listy przypisań ról dla zasobu

Aby wyświetlić listę przypisań ról dla określonego zasobu, użyj polecenia Get-AzRoleAssignment i parametru -Scope . Zakres będzie różny w zależności od zasobu. Aby uzyskać zakres, możesz uruchomić Get-AzRoleAssignment bez żadnych parametrów, aby wyświetlić listę wszystkich przypisań ról, a następnie znaleźć zakres, który chcesz wyświetlić.

Get-AzRoleAssignment -Scope "/subscriptions/<subscription_id>/resourcegroups/<resource_group_name>/providers/<provider_name>/<resource_type>/<resource>

W poniższym przykładzie pokazano, jak wyświetlić listę przypisań ról dla konta magazynowego. Należy pamiętać, że to polecenie zawiera również listę przypisań ról na wyższych poziomach, takich jak grupy zasobów i subskrypcje, które mają zastosowanie do tego konta magazynowego.

PS C:\> Get-AzRoleAssignment -Scope "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/storage-test-rg/providers/Microsoft.Storage/storageAccounts/storagetest0122"

Jeśli chcesz po prostu wyświetlić listę przypisań ról przypisanych bezpośrednio do zasobu, możesz użyć polecenia Where-Object , aby odfiltrować listę.

PS C:\> Get-AzRoleAssignment | Where-Object {$_.Scope -eq "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/storage-test-rg/providers/Microsoft.Storage/storageAccounts/storagetest0122"}

Wyświetl listę przypisań ról dla klasycznego Administratora Usługi i współadministratorów

Aby wyświetlić listę przypisań ról dla klasycznego administratora subskrypcji i współadministratorów, użyj polecenia Get-AzRoleAssignment.

Get-AzRoleAssignment -IncludeClassicAdministrators

Lista przypisań ról dla tożsamości zarządzanej

  1. Pobierz identyfikator obiektu tożsamości zarządzanej przypisanej przez system lub przypisanej przez użytkownika.

    Aby uzyskać identyfikator obiektu tożsamości zarządzanej przypisanej przez użytkownika, możesz użyć polecenia Get-AzADServicePrincipal.

    Get-AzADServicePrincipal -DisplayNameBeginsWith "<name> or <vmname>"
    
  2. Aby wyświetlić listę przypisań ról, użyj polecenia Get-AzRoleAssignment.

    Get-AzRoleAssignment -ObjectId <objectid>
    

Dalsze kroki

Przypisywanie ról platformy Azure przy użyciu Azure PowerShell