Zarządzanie rolami niestandardowymi platformy Azure

Ukończone

W tej lekcji dowiesz się, kto może zarządzać rolami niestandardowymi platformy Azure i jak to zrobić.

KtoTo może zarządzać rolami niestandardowymi?

Ogólnie rzecz biorąc, administratorzy z rolami właściciela lub dostępu użytkowników Administracja istrator mają uprawnienia do tworzenia ról niestandardowych i zarządzania nimi. Domyślnie te role mają Microsoft.Authorization/roleDefinitions/write uprawnienia do wszystkich zakresów przypisania ról. To uprawnienie jest wymagane do tworzenia, usuwania lub aktualizowania ról niestandardowych.

Zakresy przypisania ról są definiowane w niestandardowej definicji roli w funkcji AssignableScopes. Zgodnie z opisem w lekcji 2, assignableScopes może być co najmniej jedną subskrypcją, grupami zasobów lub zasobami.

W poniższej tabeli wymieniono uprawnienia potrzebne do tworzenia, usuwania, aktualizowania lub wyświetlania ról niestandardowych. Aby zarządzać rolami niestandardowymi, należy przypisać do roli, która ma powiązane akcje i assignableScopes w definicji roli.

Zadanie Czynności opis
Tworzenie/usuwanie Microsoft.Authorization/roleDefinitions/write Użytkownicy mogą tworzyć lub usuwać role niestandardowe do użycia w zakresach. Na przykład: Właściciele i dostęp użytkowników Administracja istratory subskrypcji, grup zasobów i zasobów.
Aktualizowanie Microsoft.Authorization/roleDefinitions/write Użytkownicy mogą aktualizować role niestandardowe w zakresach. Na przykład: Właściciele i dostęp użytkowników Administracja istratory subskrypcji, grup zasobów i zasobów.
Widok Microsoft.Authorization/roleDefinitions/read Użytkownicy mogą wyświetlać role niestandardowe dostępne do przypisania w zakresie. Wszystkie wbudowane role umożliwiają udostępnianie ról niestandardowych do przypisania.

Tworzenie ról niestandardowych

W poprzedniej lekcji utworzono rolę niestandardową przy użyciu interfejsu wiersza polecenia platformy Azure. Rolę niestandardową można również utworzyć przy użyciu witryny Azure Portal lub programu Azure PowerShell.

Tworzenie ról niestandardowych przy użyciu witryny Azure Portal

W witrynie Azure Portal przejdź do subskrypcji lub grupy zasobów, do której ma być stosowany zakres roli niestandardowej, a następnie przejdź do pozycji Kontrola dostępu (IAM) i wybierz pozycję Dodaj>rolę niestandardową.

Screenshot that shows Add custom role option under Add button.

Możesz sklonować istniejącą rolę lub zacząć od podstaw.

Screenshot of clone role radio button selected and Virtual Machine Contributor as role to clone.

Za pomocą dowolnego zaznaczenia można edytować uprawnienia, zakresy i wynikowy kod JSON.

Tworzenie roli niestandardowej przy użyciu programu Azure PowerShell

Kroki związane z tworzeniem roli przy użyciu programu Azure PowerShell są podobne do czynności omówionych w poprzednich dwóch lekcjach. Po zdefiniowaniu roli niestandardowej w pliku JSON użyj następującego polecenia w interfejsie wiersza polecenia platformy Azure, aby utworzyć rolę niestandardową:

az role definition create --role-definition vm-operator-role.json

Aby utworzyć rolę w programie Azure PowerShell, uruchom następujące polecenie:

New-AzRoleDefinition -InputFile "vm-operator-role.json"

Aktualizowanie ról niestandardowych

Aby zaktualizować rolę niestandardową, możesz użyć interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell. W następnej lekcji omówisz konkretne kroki aktualizacji niestandardowej definicji roli; ale ogólnie po zaktualizowaniu pliku JSON za pomocą zmian uruchomisz jedno z następujących poleceń.

Aby zaktualizować rolę niestandardową przy użyciu interfejsu wiersza polecenia platformy Azure, uruchom następujące polecenie ze ścieżką do pliku JSON zawierającego aktualizacje:

az role definition update --role-definition "<<path-to-json-file>>"

W programie Azure PowerShell uruchom następujące polecenie ze ścieżką do zaktualizowanego pliku JSON:

Set-AzRoleDefinition -InputFile "<<path-to-json-file>>"

Wyświetlanie ról niestandardowych

W następnej lekcji dowiesz się, jak wyświetlać role niestandardowe w witrynie Azure Portal. Listę ról niestandardowych można również uzyskać przy użyciu interfejsu wiersza polecenia platformy Azure lub programu PowerShell.

Aby wyświetlić listę wszystkich ról niestandardowych przy użyciu interfejsu wiersza polecenia platformy Azure, użyj następującego polecenia:

az role definition list --custom-role-only true --output json | jq '.[] | {"roleName":.roleName, "roleType":.roleType}'

Zwróć uwagę, że polecenie pyta tylko o nazwę roli i typ roli. Ułatwia to wyświetlanie wielu ról.

Aby wyświetlić listę wszystkich ról niestandardowych przy użyciu programu Azure PowerShell, użyj następującego polecenia. To polecenie wyświetla listę ról niestandardowych, które są dostępne do przypisania w subskrypcji. Jeśli subskrypcja nie znajduje się w roli AssignableScopes, rola niestandardowa nie zostanie wyświetlona.

Get-AzRoleDefinition | ? {$_.IsCustom -eq $true} | FT Name, IsCustom

Wyświetlanie definicji roli

Aby wyświetlić pełną definicję określonej roli, użyj następującego polecenia interfejsu wiersza polecenia platformy Azure:

az role definition list --name "Virtual Machine Operator"

Aby wyświetlić definicję w programie PowerShell, użyj następującego polecenia:

Get-AzRoleDefinition "Virtual Machine Operator" 

Wyświetlanie listy przypisań ról niestandardowych

Następujące polecenie umożliwia sprawdzenie, kto jest przypisany do roli niestandardowej utworzonej w interfejsie wiersza polecenia platformy Azure:

az role assignment list --role "Virtual Machine Operator"

W przypadku programu PowerShell użyj następującego polecenia:

Get-AzRoleAssignment -RoleDefinitionName "Virtual Machine Operator"

Usuwanie ról niestandardowych

Do ćwiczeń w następnej lekcji potrzebna jest rola niestandardowa utworzona w poprzedniej lekcji, więc nie usuwaj jeszcze roli niestandardowej. Najpierw omówimy sposób usuwania roli niestandardowej.

Usuwanie przypisań ról

Jeśli zdecydujesz, że nie potrzebujesz już roli niestandardowej, musisz usunąć przypisania ról przed usunięciem roli.

W witrynie Azure Portal można usunąć przypisania, przechodząc do subskrypcji, grupy zasobów lub zasobu, do którego ma zastosowanie zakres roli niestandardowej. Następnie przejdź do pozycji Kontrola dostępu (IAM)>Przypisania ról. Filtruj według nazwy roli, wybierz wszystkich użytkowników przypisanych do roli, a następnie wybierz pozycję Usuń.

W interfejsie wiersza polecenia platformy Azure użyj następującego polecenia z nazwą roli niestandardowej:

   az role assignment delete --role "role name"

W programie Azure PowerShell użyj Remove-AzRoleAssignment polecenia cmdlet . Polecenie może wyglądać mniej więcej tak:

Remove-AzRoleAssignment -ObjectId <object_id> -RoleDefinitionName "role name" -Scope /subscriptions/<subscription_id>

ObjectID to Microsoft Entra ObjectId użytkownika, grupy lub jednostki usługi.

Usuwanie roli niestandardowej

Rolę niestandardową można usunąć przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.

W witrynie Azure Portal przejdź do subskrypcji, grupy zasobów lub zasobu, do którego ma zastosowanie zakres roli niestandardowej, a następnie przejdź do pozycji Role kontroli dostępu (IAM).> Aby znaleźć rolę, wybierz pozycję Typ>CustomRole.

Screenshot that shows custom roles selected from drop-down list.

Wybierz rolę, a następnie wybierz pozycję Usuń.

W następnej lekcji użyjesz następującego polecenia, aby usunąć rolę niestandardową przy użyciu interfejsu wiersza polecenia platformy Azure:

az role definition delete --name "role name"

W programie PowerShell użyj następującego polecenia, aby usunąć rolę:

Get-AzRoleDefinition "role name" | Remove-AzRoleDefinition

Sprawdź swoją wiedzę

1.

Jakie jest polecenie cmdlet programu Azure PowerShell w celu zaktualizowania roli niestandardowej?

2.

Jakie kroki należy wykonać, aby usunąć rolę niestandardową?