Rozwiązywanie problemów z kontrolą dostępu na podstawie ról platformy Azure
W tym artykule opisano niektóre typowe rozwiązania problemów związanych z kontrolą dostępu opartą na rolach platformy Azure (Azure RBAC).
Przypisania ról platformy Azure
Objaw — opcja Dodawania przypisania roli jest wyłączona
Nie możesz przypisać roli w witrynie Azure Portal w obszarze Kontrola dostępu (zarządzanie dostępem i tożsamościami), ponieważ opcja Dodaj>przypisanie roli jest wyłączona
Przyczyna
Obecnie logujesz się za pomocą użytkownika, który nie ma uprawnień do przypisywania ról w wybranym zakresie.
Rozwiązanie
Sprawdź, czy użytkownik jest obecnie zalogowany przy użyciu przypisanej roli, która ma Microsoft.Authorization/roleAssignments/write
uprawnienia, takie jak Administrator kontroli dostępu opartej na rolach w zakresie, który próbujesz przypisać rolę.
Objaw — role lub podmioty zabezpieczeń nie są wymienione
Podczas próby przypisania roli w witrynie Azure Portal niektóre role lub podmioty zabezpieczeń nie są wyświetlane. Na przykład na karcie Rola zostanie wyświetlony ograniczony zestaw ról.
Lub w okienku Wybierz elementy członkowskie zostanie wyświetlony ograniczony zestaw podmiotów zabezpieczeń.
Przyczyna
Istnieją ograniczenia dotyczące przypisań ról, które można dodać. Na przykład w rolach, które można przypisać lub ograniczyć w jednostkach, do których można przypisać role.
Rozwiązanie
Wyświetl przypisane ci role. Sprawdź, czy istnieje warunek, który ogranicza przypisania ról, które można dodać. Aby uzyskać więcej informacji, zobacz Delegowanie zarządzania dostępem platformy Azure do innych osób.
Objaw — nie można przypisać roli
Nie możesz przypisać roli i występuje błąd podobny do następującego:
Failed to add {securityPrincipal} as {role} for {scope} : The client '{clientName}' with object id '{objectId}' does not have authorization or an ABAC condition not fulfilled to perform action 'Microsoft.Authorization/roleAssignments/write' over scope '/subscriptions/{subscriptionId}/Microsoft.Authorization/roleAssignments/{roleAssignmentId}' or the scope is invalid. If access was recently granted, please refresh your credentials.
Przyczyna 1
Użytkownik jest obecnie zalogowany przy użyciu użytkownika, który nie ma uprawnień do przypisywania ról w wybranym zakresie.
Rozwiązanie 1
Sprawdź, czy użytkownik jest obecnie zalogowany przy użyciu przypisanej roli z Microsoft.Authorization/roleAssignments/write
uprawnieniami, takimi jak Administrator kontroli dostępu opartej na rolach w zakresie, który próbujesz przypisać rolę.
Przyczyna 2
Istnieją ograniczenia dotyczące przypisań ról, które można dodać. Na przykład w rolach, które można przypisać lub ograniczyć w jednostkach, do których można przypisać role.
Rozwiązanie 2
Wyświetl przypisane ci role. Sprawdź, czy istnieje warunek, który ogranicza przypisania ról, które można dodać. Aby uzyskać więcej informacji, zobacz Delegowanie zarządzania dostępem platformy Azure do innych osób.
Objaw — nie można przypisać roli przy użyciu jednostki usługi z interfejsem wiersza polecenia platformy Azure
Używasz jednostki usługi do przypisywania ról za pomocą interfejsu wiersza polecenia platformy Azure i występuje następujący błąd:
Insufficient privileges to complete the operation
Załóżmy na przykład, że masz jednostkę usługi z przypisaną rolą Właściciela i próbujesz utworzyć następujące przypisanie roli jako jednostka usługi przy użyciu interfejsu wiersza polecenia platformy Azure:
az login --service-principal --username "SPNid" --password "password" --tenant "tenantid"
az role assignment create --assignee "userupn" --role "Contributor" --scope "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}"
Przyczyna
Prawdopodobnie interfejs wiersza polecenia platformy Azure próbuje wyszukać tożsamość przypisaną w identyfikatorze Entra firmy Microsoft, a jednostka usługi nie może domyślnie odczytać identyfikatora Entra firmy Microsoft.
Rozwiązanie
Istnieją dwa sposoby, aby potencjalnie rozwiązać ten błąd. Pierwszym sposobem jest przypisanie roli Czytelnicy katalogu do jednostki usługi, aby umożliwić odczytywanie danych w katalogu.
Drugim sposobem rozwiązania tego błędu jest utworzenie przypisania roli przy użyciu parametru --assignee-object-id
zamiast --assignee
. Za pomocą interfejsu --assignee-object-id
wiersza polecenia platformy Azure pominie wyszukiwanie Entra firmy Microsoft. Musisz uzyskać identyfikator obiektu użytkownika, grupy lub aplikacji, do której chcesz przypisać rolę. Aby uzyskać więcej informacji, zobacz Przypisywanie ról platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure.
az role assignment create --assignee-object-id 11111111-1111-1111-1111-111111111111 --role "Contributor" --scope "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}"
Objaw — przypisywanie roli do nowego podmiotu zabezpieczeń czasami kończy się niepowodzeniem
Utworzysz nowego użytkownika, grupy lub jednostki usługi i natychmiast spróbujesz przypisać rolę do tego podmiotu zabezpieczeń, a przypisanie roli czasami kończy się niepowodzeniem. Zostanie wyświetlony komunikat podobny do następującego błędu:
PrincipalNotFound
Principal {principalId} does not exist in the directory {tenantId}. Check that you have the correct principal ID. If you are creating this principal and then immediately assigning a role, this error might be related to a replication delay. In this case, set the role assignment principalType property to a value, such as ServicePrincipal, User, or Group. See https://aka.ms/docs-principaltype
Przyczyna
Przyczyną jest prawdopodobnie opóźnienie replikacji. Podmiot zabezpieczeń jest tworzony w jednym regionie; jednak przypisanie roli może wystąpić w innym regionie, który jeszcze nie zreplikował podmiotu zabezpieczeń.
Rozwiązanie 1
Jeśli tworzysz nowego użytkownika lub jednostkę usługi przy użyciu interfejsu API REST lub szablonu usługi ARM, ustaw principalType
właściwość podczas tworzenia przypisania roli przy użyciu przypisań ról — tworzenie interfejsu API.
principalType | apiVersion |
---|---|
User |
2020-03-01-preview lub nowsze |
ServicePrincipal |
2018-09-01-preview lub nowsze |
Aby uzyskać więcej informacji, zobacz Przypisywanie ról platformy Azure do nowej jednostki usługi za pomocą interfejsu API REST lub Przypisywanie ról platformy Azure do nowej jednostki usługi za pomocą szablonów usługi Azure Resource Manager.
Rozwiązanie 2
Jeśli tworzysz nowego użytkownika lub jednostkę usługi przy użyciu programu Azure PowerShell, ustaw ObjectType
parametr na User
lub ServicePrincipal
podczas tworzenia przypisania roli przy użyciu polecenia New-AzRoleAssignment. Nadal obowiązują te same ograniczenia wersji podstawowego interfejsu API rozwiązania 1. Aby uzyskać więcej informacji, zobacz Przypisywanie ról platformy Azure przy użyciu programu Azure PowerShell.
Rozwiązanie 3
Jeśli tworzysz nową grupę, zaczekaj kilka minut przed utworzeniem przypisania roli.
Objaw — przypisanie roli szablonu usługi ARM zwraca stan BadRequest
Podczas próby wdrożenia pliku Bicep lub szablonu usługi ARM, który przypisuje rolę do jednostki usługi, występuje błąd:
Tenant ID, application ID, principal ID, and scope are not allowed to be updated. (code: RoleAssignmentUpdateNotPermitted)
Jeśli na przykład utworzysz przypisanie roli dla tożsamości zarządzanej, usuniesz tożsamość zarządzaną i utworzysz ją ponownie, nowa tożsamość zarządzana ma inny identyfikator podmiotu zabezpieczeń. Jeśli spróbujesz ponownie wdrożyć przypisanie roli i użyjesz tej samej nazwy przypisania roli, wdrożenie zakończy się niepowodzeniem.
Przyczyna
Przypisanie name
roli nie jest unikatowe i jest wyświetlane jako aktualizacja.
Przypisania ról są jednoznacznie identyfikowane przez ich nazwę, która jest globalnie unikatowym identyfikatorem (GUID). Nie można utworzyć dwóch przypisań ról o tej samej nazwie, nawet w różnych subskrypcjach platformy Azure. Nie można również zmienić właściwości istniejącego przypisania roli.
Rozwiązanie
Podaj idempotentną unikatową wartość przypisania name
roli . Dobrym rozwiązaniem jest utworzenie identyfikatora GUID, który używa razem zakresu, identyfikatora podmiotu zabezpieczeń i identyfikatora roli. Warto użyć guid()
funkcji , aby ułatwić tworzenie deterministycznego identyfikatora GUID dla nazw przypisań ról, jak w tym przykładzie:
resource roleAssignment 'Microsoft.Authorization/roleAssignments@2020-10-01-preview' = {
name: guid(resourceGroup().id, principalId, roleDefinitionId)
properties: {
roleDefinitionId: roleDefinitionId
principalId: principalId
principalType: principalType
}
}
Aby uzyskać więcej informacji, zobacz Create Azure RBAC resources by using Bicep (Tworzenie zasobów RBAC platformy Azure przy użyciu Bicep).
Objaw — nie znaleziono przypisań ról z tożsamością
Na liście przypisań ról w witrynie Azure Portal zauważysz, że jednostka zabezpieczeń (użytkownik, grupa, jednostka usługi lub tożsamość zarządzana) jest wyświetlana jako Tożsamość nie została znaleziona z nieznanym typem.
Jeśli wyświetlisz listę tego przypisania roli przy użyciu programu Azure PowerShell, może zostać wyświetlona pusta DisplayName
wartość i SignInName
, lub dla wartości ObjectType
Unknown
. Na przykład polecenie Get-AzRoleAssignment zwróci przypisanie roli podobne do następujących danych wyjściowych:
RoleAssignmentId : /subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222
Scope : /subscriptions/11111111-1111-1111-1111-111111111111
DisplayName :
SignInName :
RoleDefinitionName : Storage Blob Data Contributor
RoleDefinitionId : ba92f5b4-2d11-453d-a403-e96b0029c9fe
ObjectId : 33333333-3333-3333-3333-333333333333
ObjectType : User
CanDelegate : False
Podobnie po wyświetleniu tego przypisania roli na liście za pomocą interfejsu wiersza polecenia platformy Azure możesz zobaczyć pusty parametr principalName
. Na przykład polecenie az role assignment list zwróci przypisanie roli podobne do następujących danych wyjściowych:
{
"canDelegate": null,
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222",
"name": "22222222-2222-2222-2222-222222222222",
"principalId": "33333333-3333-3333-3333-333333333333",
"principalName": "",
"roleDefinitionId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleDefinitions/ba92f5b4-2d11-453d-a403-e96b0029c9fe",
"roleDefinitionName": "Storage Blob Data Contributor",
"scope": "/subscriptions/11111111-1111-1111-1111-111111111111",
"type": "Microsoft.Authorization/roleAssignments"
}
Przyczyna 1
Niedawno zaproszono użytkownika podczas tworzenia przypisania roli, a ten podmiot zabezpieczeń jest nadal w procesie replikacji w różnych regionach.
Rozwiązanie 1
Poczekaj chwilę i odśwież listę przypisań ról.
Przyczyna 2
Usunięto podmiot zabezpieczeń, który miał przypisanie roli. Jeśli przypiszesz rolę do podmiotu zabezpieczeń, a następnie usuniesz ten podmiot zabezpieczeń bez wcześniejszego usunięcia przypisania roli, będzie on widoczny na liście z adnotacją Nie odnaleziono tożsamości i typem Nieznany.
Rozwiązanie 2
Nie jest to problem z pozostawieniem tych przypisań ról, w których podmiot zabezpieczeń został usunięty. Jeśli chcesz, możesz usunąć te przypisania ról, wykonując kroki podobne do innych przypisań ról. Aby uzyskać informacje na temat usuwania przypisań ról, zobacz Usuwanie przypisań ról platformy Azure.
W programie PowerShell, jeśli spróbujesz usunąć przypisania ról przy użyciu identyfikatora obiektu i nazwy definicji roli, a więcej niż jedno przypisanie roli pasuje do parametrów, zostanie wyświetlony komunikat o błędzie: The provided information does not map to a role assignment
. Następujące dane wyjściowe pokazują przykład takiego komunikatu o błędzie:
PS C:\> Remove-AzRoleAssignment -ObjectId 33333333-3333-3333-3333-333333333333 -RoleDefinitionName "Storage Blob Data Contributor"
Remove-AzRoleAssignment : The provided information does not map to a role assignment.
At line:1 char:1
+ Remove-AzRoleAssignment -ObjectId 33333333-3333-3333-3333-333333333333 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [Remove-AzRoleAssignment], KeyNotFoundException
+ FullyQualifiedErrorId : Microsoft.Azure.Commands.Resources.RemoveAzureRoleAssignmentCommand
Jeśli zostanie wyświetlony ten komunikat o błędzie, upewnij się, że określono -Scope
również parametry lub -ResourceGroupName
.
PS C:\> Remove-AzRoleAssignment -ObjectId 33333333-3333-3333-3333-333333333333 -RoleDefinitionName "Storage Blob Data Contributor" -Scope /subscriptions/11111111-1111-1111-1111-111111111111
Objaw — nie można usunąć ostatniego przypisania roli właściciela
Próbujesz usunąć ostatnie przypisanie roli Właściciela dla subskrypcji i zostanie wyświetlony następujący błąd:
Cannot delete the last RBAC admin assignment
Przyczyna
Usunięcie ostatniego przypisania roli Właściciel dla subskrypcji nie jest obsługiwane, aby uniknąć oddzielonia subskrypcji.
Rozwiązanie
Jeśli chcesz anulować subskrypcję, zobacz Anulowanie subskrypcji platformy Azure.
Możesz usunąć ostatnie przypisanie roli właściciela (lub administratora dostępu użytkowników) w zakresie subskrypcji, jeśli jesteś administratorem globalnym dzierżawy lub administratorem klasycznym (administrator usługi lub współadministratorem) dla subskrypcji. W takim przypadku nie ma żadnego ograniczenia dotyczącego usuwania. Jeśli jednak wywołanie pochodzi z innego podmiotu zabezpieczeń, nie będzie można usunąć ostatniego przypisania roli Właściciel w zakresie subskrypcji.
Objaw — przypisanie roli nie jest przenoszone po przeniesieniu zasobu
Przyczyna
Jeśli przeniesiesz zasób z rolą platformy Azure przypisaną bezpośrednio do tego zasobu lub zasobu podrzędnego, przypisanie roli nie zostanie przeniesione i zostanie oddzielone.
Rozwiązanie
Po przeniesieniu zasobu należy ponownie utworzyć przypisanie roli. Ostatecznie oddzielone przypisanie roli zostanie automatycznie usunięte, ale najlepszym rozwiązaniem jest usunięcie przypisania roli przed przeniesieniem zasobu. Aby dowiedzieć się, jak przenosić zasoby, zobacz Przenoszenie zasobów do nowej grupy zasobów lub subskrypcji.
Objaw — zmiany przypisania roli nie są wykrywane
Ostatnio dodano lub zaktualizowano przypisanie roli, ale zmiany nie są wykrywane. Może zostać wyświetlony komunikat Status: 401 (Unauthorized)
.
Przyczyna 1
Program Azure Resource Manager czasami buforuje konfiguracje i dane w celu zwiększenia wydajności.
Rozwiązanie 1
Po przypisaniu ról lub usunięciu przypisań ról może upłynąć do 10 minut, aby zmiany zaczęły obowiązywać. Jeśli używasz witryny Azure Portal, programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure, możesz wymusić odświeżenie zmian przypisania roli przez wylogowanie się i zalogowanie. Jeśli wprowadzasz zmiany przypisania ról przy użyciu wywołań interfejsu API REST, możesz wymusić odświeżenie, odświeżając token dostępu.
Przyczyna 2
Tożsamości zarządzane zostały dodane do grupy i przypisano do tej grupy rolę. Usługi zaplecza dla tożsamości zarządzanych utrzymują pamięć podręczną na identyfikator URI zasobu przez około 24 godziny.
Rozwiązanie 2
Wprowadzenie zmian w grupie lub członkostwie roli tożsamości zarządzanej może potrwać kilka godzin. Aby uzyskać więcej informacji, zobacz Ograniczenie używania tożsamości zarządzanych do autoryzacji.
Objaw — zmiany przypisywania ról w zakresie grupy zarządzania nie są wykrywane
Ostatnio dodano lub zaktualizowano przypisanie roli w zakresie grupy zarządzania, ale zmiany nie są wykrywane.
Przyczyna
Program Azure Resource Manager czasami buforuje konfiguracje i dane w celu zwiększenia wydajności.
Rozwiązanie
Po przypisaniu ról lub usunięciu przypisań ról może upłynąć do 10 minut, aby zmiany zaczęły obowiązywać. Jeśli dodasz lub usuniesz wbudowane przypisanie roli w zakresie grupy zarządzania, a wbudowana rola ma DataActions
wartość , dostęp na płaszczyźnie danych może nie zostać zaktualizowany przez kilka godzin. Dotyczy to tylko zakresu grupy zarządzania i płaszczyzny danych. Ról niestandardowych z elementem DataActions
nie można przypisywać do zakresu grupy zarządzania.
Objaw — przypisania ról dla zmian grupy zarządzania nie są wykrywane
Utworzono nową podrzędną grupę zarządzania, a przypisanie roli w nadrzędnej grupie zarządzania nie jest wykrywane dla podrzędnej grupy zarządzania.
Przyczyna
Program Azure Resource Manager czasami buforuje konfiguracje i dane w celu zwiększenia wydajności.
Rozwiązanie
Zastosowanie przypisania roli podrzędnej grupy zarządzania może potrwać do 10 minut. Jeśli używasz witryny Azure Portal, programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure, możesz wymusić odświeżenie zmian przypisań ról, wylogowując się i logując się ponownie. Jeśli zmieniasz przypisania ról za pomocą wywołań interfejsu API REST, możesz wymusić odświeżenie, odświeżając swój token dostępu.
Objaw — usuwanie przypisań ról przy użyciu programu PowerShell trwa kilka minut
Aby usunąć przypisanie roli, użyj polecenia Remove-AzRoleAssignment . Następnie użyj polecenia Get-AzRoleAssignment , aby sprawdzić, czy przypisanie roli zostało usunięte dla podmiotu zabezpieczeń. Na przykład:
Get-AzRoleAssignment -ObjectId $securityPrincipalObject.Id
Polecenie Get-AzRoleAssignment wskazuje, że przypisanie roli nie zostało usunięte. Jeśli jednak zaczekasz 5–10 minut i ponownie uruchom polecenie Get-AzRoleAssignment , dane wyjściowe wskazują, że przypisanie roli zostało usunięte.
Przyczyna
Przypisanie roli zostało usunięte. Jednak w celu zwiększenia wydajności program PowerShell używa pamięci podręcznej podczas wyświetlania listy przypisań ról. Odświeżanie pamięci podręcznej może potrwać około 10 minut.
Rozwiązanie
Zamiast wyświetlać listę przypisań ról dla podmiotu zabezpieczeń, wyświetl listę wszystkich przypisań ról w zakresie subskrypcji i odfiltruj dane wyjściowe. Na przykład następujące polecenie:
$validateRemovedRoles = Get-AzRoleAssignment -ObjectId $securityPrincipalObject.Id
Zamiast tego można zastąpić następującym poleceniem:
$validateRemovedRoles = Get-AzRoleAssignment -Scope /subscriptions/$subId | Where-Object -Property ObjectId -EQ $securityPrincipalObject.Id
Role niestandardowe
Objaw — nie można zaktualizować lub usunąć roli niestandardowej
Nie możesz zaktualizować ani usunąć istniejącej roli niestandardowej.
Przyczyna 1
Obecnie logujesz się za pomocą użytkownika, który nie ma uprawnień do aktualizowania ani usuwania ról niestandardowych.
Rozwiązanie 1
Sprawdź, czy obecnie zalogowano się przy użyciu użytkownika, któremu przypisano rolę z uprawnieniami, Microsoft.Authorization/roleDefinitions/write
takimi jak Administrator dostępu użytkowników.
Przyczyna 2
Rola niestandardowa obejmuje subskrypcję w zakresach możliwych do przypisania, a subskrypcja jest w stanie wyłączonym.
Rozwiązanie 2
Ponownie uaktywnij wyłączoną subskrypcję i zaktualizuj rolę niestandardową zgodnie z potrzebami. Aby uzyskać więcej informacji, zobacz Ponowne uaktywnianie wyłączonej subskrypcji platformy Azure.
Objaw — nie można utworzyć lub zaktualizować roli niestandardowej
Podczas próby utworzenia lub zaktualizowania roli niestandardowej wystąpi błąd podobny do następującego:
The client '<clientName>' with object id '<objectId>' has permission to perform action 'Microsoft.Authorization/roleDefinitions/write' on scope '/subscriptions/<subscriptionId>'; however, it does not have permission to perform action 'Microsoft.Authorization/roleDefinitions/write' on the linked scope(s)'/subscriptions/<subscriptionId1>,/subscriptions/<subscriptionId2>,/subscriptions/<subscriptionId3>' or the linked scope(s)are invalid
Przyczyna
Ten błąd zwykle wskazuje, że nie masz uprawnień do co najmniej jednego z zakresów , które można przypisać w roli niestandardowej.
Rozwiązanie
Spróbuj wykonać następujące czynności:
- Sprawdź , kto może tworzyć, usuwać, aktualizować lub wyświetlać rolę niestandardową, i sprawdzić, czy masz uprawnienia do tworzenia lub aktualizowania roli niestandardowej dla wszystkich zakresów możliwych do przypisania.
- Jeśli nie masz uprawnień, poproś administratora o przypisanie Ci roli, która ma
Microsoft.Authorization/roleDefinitions/write
akcję, taką jak administrator dostępu użytkowników, w zakresie zakresu możliwego do przypisania. - Sprawdź, czy wszystkie możliwe do przypisania zakresy w roli niestandardowej są prawidłowe. Jeśli nie, usuń wszystkie nieprawidłowe zakresy możliwe do przypisania.
Aby uzyskać więcej informacji, zobacz samouczki dotyczące ról niestandardowych przy użyciu witryny Azure Portal, programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
Objaw — nie można usunąć roli niestandardowej
Nie możesz usunąć roli niestandardowej i zostanie wyświetlony następujący komunikat o błędzie:
There are existing role assignments referencing role (code: RoleDefinitionHasAssignments)
Przyczyna
Nadal istnieją przypisania ról używające roli niestandardowej.
Rozwiązanie
Usuń przypisania ról używające roli niestandardowej i spróbuj ponownie usunąć rolę niestandardową. Aby uzyskać więcej informacji, zobacz Znajdowanie przypisań ról w celu usunięcia roli niestandardowej.
Objaw — nie można dodać więcej niż jednej grupy zarządzania jako możliwego do przypisania zakresu
Podczas próby utworzenia lub zaktualizowania roli niestandardowej nie można dodać więcej niż jednej grupy zarządzania jako możliwego do przypisania zakresu.
Przyczyna
We właściwości AssignableScopes
roli niestandardowej można zdefiniować tylko jedną grupę zarządzania.
Rozwiązanie
Zdefiniuj jedną grupę zarządzania w AssignableScopes
roli niestandardowej. Aby uzyskać więcej informacji na temat ról niestandardowych i grup zarządzania, zobacz Organizowanie zasobów przy użyciu grup zarządzania platformy Azure.
Objaw — nie można dodać akcji danych do roli niestandardowej
Podczas próby utworzenia lub zaktualizowania roli niestandardowej nie można dodać akcji danych ani zobaczyć następującego komunikatu:
You cannot add data action permissions when you have a management group as an assignable scope
Przyczyna
Próbujesz utworzyć rolę niestandardową z akcjami danych i grupą zarządzania jako zakres możliwy do przypisania. Ról niestandardowych z elementem DataActions
nie można przypisywać do zakresu grupy zarządzania.
Rozwiązanie
Utwórz rolę niestandardową z co najmniej jedną subskrypcją jako zakres możliwy do przypisania. Aby uzyskać więcej informacji na temat ról niestandardowych i grup zarządzania, zobacz Organizowanie zasobów przy użyciu grup zarządzania platformy Azure.
Odmowa dostępu lub błędy uprawnień
Objaw — autoryzacja nie powiodła się
Podczas próby utworzenia zasobu zostanie wyświetlony następujący komunikat o błędzie:
The client with object id does not have authorization to perform action over scope (code: AuthorizationFailed)
Przyczyna 1
Obecnie logujesz się za pomocą użytkownika, który nie ma uprawnień do zapisu do zasobu w wybranym zakresie.
Rozwiązanie 1
Sprawdź, czy obecnie zalogowano się przy użyciu użytkownika, któremu przypisano rolę z uprawnieniami do zapisu do zasobu w wybranym zakresie. Na przykład do zarządzania maszynami wirtualnymi w grupie zasobów musisz mieć rolę Współautor maszyny wirtualnej w grupie zasobów (lub zakresie nadrzędnym). Aby zapoznać się z listą uprawnień poszczególnych ról wbudowanych, zobacz Role wbudowane platformy Azure.
Przyczyna 2
Aktualnie zalogowany użytkownik ma przypisanie roli z następującymi kryteriami:
- Rola obejmuje akcję danych Microsoft.Storage
- Przypisanie roli obejmuje warunek ABAC, który używa operatorów porównania identyfikatora GUID
Rozwiązanie 2
Obecnie nie można mieć przypisania roli z akcją danych Microsoft.Storage i warunkiem ABAC, który używa operatora porównania identyfikatora GUID. Poniżej przedstawiono kilka opcji rozwiązania tego błędu:
- Jeśli rola jest rolą niestandardową, usuń wszystkie akcje danych Microsoft.Storage
- Zmodyfikuj warunek przypisania roli tak, aby nie używał operatorów porównania identyfikatora GUID
Objaw — użytkownik-gość otrzymuje autoryzację nie powiodła się
Gdy użytkownik-gość próbuje uzyskać dostęp do zasobu, otrzymuje komunikat o błędzie podobny do następującego:
The client '<client>' with object id '<objectId>' does not have authorization to perform action '<action>' over scope '<scope>' or the scope is invalid.
Przyczyna
Użytkownik-gość nie ma uprawnień do zasobu w wybranym zakresie.
Rozwiązanie
Sprawdź, czy użytkownik-gość ma przypisaną rolę z najmniej uprzywilejowanymi uprawnieniami do zasobu w wybranym zakresie. Aby uzyskać więcej informacji, przypisz role platformy Azure do użytkowników zewnętrznych przy użyciu witryny Azure Portal.
Objaw — nie można utworzyć żądania pomocy technicznej
Podczas próby utworzenia lub zaktualizowania biletu pomocy technicznej zostanie wyświetlony następujący komunikat o błędzie:
You don't have permission to create a support request
Przyczyna
Obecnie logujesz się za pomocą użytkownika, który nie ma uprawnień do tworzenia żądań pomocy technicznej.
Rozwiązanie
Sprawdź, czy obecnie zalogowano się przy użyciu użytkownika, któremu przypisano rolę z Microsoft.Support/supportTickets/write
uprawnieniami, takimi jak Współautor wniosku o pomoc techniczną.
Funkcje platformy Azure są wyłączone
Objaw — niektóre funkcje aplikacji internetowej są wyłączone
Użytkownik ma dostęp do odczytu do aplikacji internetowej, a niektóre funkcje są wyłączone.
Przyczyna
Jeśli przyznasz użytkownikowi dostęp do odczytu do aplikacji internetowej, niektóre funkcje mogą nie być oczekiwane. Następujące możliwości zarządzania wymagają dostępu do zapisu do aplikacji internetowej i nie są dostępne w żadnym scenariuszu tylko do odczytu.
- Polecenia (takie jak uruchamianie, zatrzymywanie itp.)
- Zmienianie ustawień takich jak konfiguracja ogólna, ustawienia skalowania, ustawienia kopii zapasowej i ustawienia monitorowania
- Uzyskiwanie dostępu do poświadczeń publikowania i innych wpisów tajnych, takich jak ustawienia aplikacji i parametry połączenia
- Przesyłanie strumieniowe dzienników
- Konfiguracja dzienników zasobów
- Konsola (wiersz polecenia)
- Aktywne i ostatnie wdrożenia (w przypadku lokalnego ciągłego wdrażania usługi Git)
- Szacowane wydatki
- Testy internetowe
- Sieć wirtualna (widoczna dla Czytelnika tylko, jeśli została wcześniej skonfigurowana przez użytkownika z dostępem do zapisu).
Rozwiązanie
Przypisz wbudowaną rolę Współautor lub inną rolę platformy Azure z uprawnieniami do zapisu dla aplikacji internetowej.
Objaw — niektóre zasoby aplikacji internetowej są wyłączone
Użytkownik ma dostęp do zapisu w aplikacji internetowej, a niektóre funkcje są wyłączone.
Przyczyna
W przypadku aplikacji internetowych sytuację komplikuje obecność kilku różnych, współdziałających ze sobą zasobów. Oto typowa grupa zasobów z kilkoma witrynami internetowymi:
W związku z tym, jeśli udzielisz komuś dostępu tylko do aplikacji internetowej, większość funkcji w bloku witryny internetowej w witrynie Azure Portal pozostanie wyłączona.
Te elementy wymagają dostępu do zapisu do planu usługiApp Service odpowiadającego witrynie internetowej:
- Wyświetlanie warstwy cenowej aplikacji internetowej (Bezpłatna lub Standardowa)
- Konfiguracja skalowania (liczba wystąpień, rozmiar maszyny wirtualnej, ustawienia autoskalowania)
- Limity przydziału (magazyn, przepustowość, procesor CPU)
Te elementy wymagają dostępu do zapisu do całej grupy zasobów zawierającej witrynę internetową:
- Certyfikaty i powiązania protokołu TLS/SSL (certyfikaty TLS/SSL mogą być współdzielone między lokacjami w tej samej grupie zasobów i lokalizacji geograficznej)
- Zasady alertów
- Ustawienia autoskalowania
- Składniki usługi Application Insights
- Testy internetowe
Rozwiązanie
Przypisz wbudowaną rolę platformy Azure z uprawnieniami do zapisu dla planu usługi App Service lub grupy zasobów.
Objaw — niektóre funkcje maszyny wirtualnej są wyłączone
Użytkownik ma dostęp do maszyny wirtualnej, a niektóre funkcje są wyłączone.
Przyczyna
Podobnie jak w przypadku aplikacji internetowych niektóre funkcje w bloku maszyny wirtualnej wymagają dostępu do zapisu na maszynie wirtualnej lub w innych zasobach w grupie zasobów.
Maszyny wirtualne są powiązane z nazwami domen, sieciami wirtualnymi, kontami magazynu i regułami alertów.
Te elementy wymagają dostępu do zapisu na maszynie wirtualnej:
- Punkty końcowe
- Adresy IP
- Dyski
- Rozszerzenia
Wymagają one dostępu do zapisu zarówno do maszyny wirtualnej, jak i do grupy zasobów (wraz z nazwą domeny), w których się znajduje:
- Zestaw dostępności
- Zestaw o zrównoważonym obciążeniu
- Zasady alertów
Jeśli nie możesz uzyskać dostępu do żadnego z tych kafelków, poproś administratora o dostęp Współautora do grupy zasobów.
Rozwiązanie
Przypisz wbudowaną rolę platformy Azure z uprawnieniami do zapisu dla maszyny wirtualnej lub grupy zasobów.
Objaw — niektóre funkcje aplikacji funkcji są wyłączone
Użytkownik ma dostęp do aplikacji funkcji, a niektóre funkcje są wyłączone. Na przykład mogą kliknąć kartę Funkcje platformy, a następnie kliknąć pozycję Wszystkie ustawienia , aby wyświetlić niektóre ustawienia związane z aplikacją funkcji (podobną do aplikacji internetowej), ale nie mogą modyfikować żadnego z tych ustawień.
Przyczyna
Niektóre funkcje usługi Azure Functions wymagają dostępu do zapisu. Jeśli na przykład użytkownik ma przypisaną rolę Czytelnik , nie będzie mógł wyświetlać funkcji w aplikacji funkcji. W portalu zostanie wyświetlony komunikat (Brak dostępu).
Rozwiązanie
Przypisz wbudowaną rolę platformy Azure z uprawnieniami do zapisu dla aplikacji funkcji lub grupy zasobów.
Przenoszenie subskrypcji do innego katalogu
Objaw — wszystkie przypisania ról są usuwane po przeniesieniu subskrypcji
Przyczyna
Po przeniesieniu subskrypcji platformy Azure do innego katalogu Microsoft Entra wszystkie przypisania ról zostaną trwale usunięte ze źródłowego katalogu Microsoft Entra i nie zostaną zmigrowane do docelowego katalogu Microsoft Entra.
Rozwiązanie
Należy ponownie utworzyć przypisania ról w dzierżawie docelowej. Trzeba także ręcznie utworzyć ponownie tożsamości zarządzane dla zasobów platformy Azure. Aby uzyskać więcej informacji, zobacz Transfer an Azure subscription to a different Microsoft Entra directory and FAQ and known issues with managed identities (Przenoszenie subskrypcji platformy Azure do innego katalogu firmy Microsoft Entra) i często zadawanych pytań oraz znanych problemów z tożsamościami zarządzanymi.
Objaw — nie można uzyskać dostępu do subskrypcji po przeniesieniu subskrypcji
Rozwiązanie
Jeśli jesteś administratorem globalnym firmy Microsoft Entra i nie masz dostępu do subskrypcji po przeniesieniu między katalogami, użyj przełącznika Zarządzanie dostępem dla zasobów platformy Azure, aby tymczasowo podnieść poziom dostępu , aby uzyskać dostęp do subskrypcji.
Klasyczni administratorzy subskrypcji
Ważne
Od 31 sierpnia 2024 r. klasyczne role administratora platformy Azure (wraz z klasycznymi zasobami platformy Azure i programem Azure Service Manager) są wycofane i nie są już obsługiwane. Jeśli nadal masz aktywne przypisania roli Współadministrator lub Administrator usługi, przekonwertuj te przypisania ról na kontrolę dostępu opartą na rolach platformy Azure natychmiast.
Aby uzyskać więcej informacji, zobacz Klasyczni administratorzy subskrypcji platformy Azure.