Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Problemy ogólne
Objaw — warunek nie jest wymuszany
Przyczyna 1
Podmioty bezpieczeństwa mają co najmniej jedno przypisanie roli w tym samym lub wyższym zakresie.
Rozwiązanie 1
Upewnij się, że podmioty zabezpieczeń nie mają wielu przypisań ról (z warunkami lub bez ich użycia), które udzielają dostępu do tej samej akcji danych, co prowadzi do braku wymuszania warunków. Aby uzyskać informacje na temat logiki oceny, zobacz Jak kontrola dostępu oparta na rolach platformy Azure określa, czy użytkownik ma dostęp do zasobu.
Przyczyna 2
Przypisanie roli obejmuje wiele działań, które przyznają uprawnienia, a warunek nie dotyczy wszystkich działań. Na przykład, możesz utworzyć obiekt blob, jeśli masz operacje na danych /blobs/write lub /blobs/add/action. Jeśli przypisanie roli ma zarówno akcje dotyczące danych, a Ty określasz tylko jedną z nich w warunku, przypisanie roli przyzna uprawnienie do tworzenia obiektów blob i ominięcia warunku.
Rozwiązanie 2
Jeśli przypisanie roli ma wiele akcji, które przyznają uprawnienie, upewnij się, że wszystkie odpowiednie akcje są uwzględnione.
Przyczyna 3
Dodanie warunku do przypisania roli może skutkować tym, że jego wymuszenie zajmie do 5 minut. Po dodaniu warunku dostawcy zasobów (na przykład Microsoft Storage) są powiadamiani o aktualizacji. Dostawcy zasobów natychmiast aktualizują lokalne pamięci podręczne, aby upewnić się, że mają najnowsze przypisania ról. Ten proces trwa od 1 do 2 minut, ale może potrwać do 5 minut.
Rozwiązanie 3
Poczekaj 5 minut i ponownie przetestuj stan.
Komunikat o błędzie „Warunek nieprawidłowy” podczas dodawania warunku
Podczas próby dodania przypisania roli z warunkiem występuje błąd podobny do następującego:
The given role assignment condition is invalid.
Przyczyna 1
Właściwość conditionVersion jest ustawiona na wartość "1.0".
Rozwiązanie 1
Ustaw conditionVersion właściwość na "2.0".
Przyczyna 2
Warunek nie jest poprawnie sformatowany.
Rozwiązanie 2
Rozwiąż wszelkie problemy z formatem lub składnią warunku . Alternatywnie dodaj warunek przy użyciu edytora wizualizacji w witrynie Azure Portal.
Problemy w edytorze wizualizacji
Objaw — edytor warunków jest wyświetlany podczas edytowania warunku
Stworzyłeś warunek przy użyciu szablonu opisanego w Delegowanie zarządzania przypisaniem ról w Azure innym osobom z uwzględnieniem warunków. Podczas próby edytowania warunku zostanie wyświetlony edytor zaawansowanych warunków.
Podczas poprzedniej edycji warunku edytowano go przy użyciu szablonu warunku.
Przyczyna
Warunek nie jest zgodny ze wzorcem szablonu.
Rozwiązanie 1
Edytuj warunek, aby był zgodny z jednym z następujących wzorców szablonów.
| Szablon | Warunek |
|---|---|
| Ograniczanie ról | Przykład: role ograniczeń |
| Ogranicz role i główne typy podmiotów | Przykład: ogranicz role i typy podmiotów |
| Ograniczanie ról i podmiotów | Przykład: ograniczenia ról i określonych grup |
| Zezwalaj na wszystkie z wyjątkiem określonych ról | Przykład: Zezwalaj na większość ról, ale nie zezwalaj innym osobom na przypisywanie ról |
Rozwiązanie 2
Usuń warunek i utwórz go ponownie, wykonując kroki opisane w temacie Delegowanie zarządzania przypisaniem ról platformy Azure do innych osób z warunkami.
Objaw — podmiot nie pojawia się w źródle atrybutu
Gdy próbujesz dodać przypisanie roli z warunkiem, Principal nie pojawia się na liście źródło atrybutu.
Zamiast tego zostanie wyświetlony komunikat:
To use principal (user) attributes, you must have Microsoft Entra permissions (such as the [Attribute Assignment Administrator](../active-directory/roles/permissions-reference.md#attribute-assignment-administrator) role) and custom security attributes defined in Microsoft Entra ID.
Przyczyna
Nie spełniasz wymagań wstępnych. Aby użyć atrybutów głównych, musisz mieć następujące elementy:
- Uprawnienia firmy Microsoft Entra dla zalogowanego użytkownika do odczytu co najmniej jednego zestawu atrybutów
- Niestandardowe atrybuty zabezpieczeń zdefiniowane w identyfikatorze Entra firmy Microsoft
Rozwiązanie
Otwórz pozycję Microsoft Entra ID> entra firmy Microsoft).
Jeśli zobaczysz stronę Rozpocznij, nie masz uprawnień do odczytu co najmniej jednego zestawu atrybutów lub niestandardowe atrybuty zabezpieczeń nie zostały jeszcze zdefiniowane.
Jeśli zdefiniowano niestandardowe atrybuty zabezpieczeń, przypisz jedną z następujących ról w zakresie dzierżawcy lub zestawu atrybutów. Aby uzyskać więcej informacji, zobacz Zarządzanie dostępem do niestandardowych atrybutów zabezpieczeń w identyfikatorze Entra firmy Microsoft.
- Czytelnik definicji atrybutów
- Czytnik przypisywania atrybutów
- Administrator definicji atrybutu
- Administrator przypisania atrybutu
Ważne
Domyślnie administrator globalny i inne role administratora nie mają uprawnień do odczytu, definiowania ani przypisywania niestandardowych atrybutów zabezpieczeń.
Jeśli niestandardowe atrybuty zabezpieczeń nie zostały jeszcze zdefiniowane, przypisz rolę Administrator definicji atrybutów w zakresie dzierżawy i dodaj niestandardowe atrybuty zabezpieczeń. Aby uzyskać więcej informacji, zobacz Dodawanie lub dezaktywowanie niestandardowych atrybutów zabezpieczeń w identyfikatorze Entra firmy Microsoft.
Po zakończeniu powinno być możliwe odczytanie co najmniej jednego zestawu atrybutów.
Podmiot powinien teraz pojawić się na liście Źródło atrybutów gdy dodajesz przypisanie roli z warunkiem.
Objaw — główny element nie jest wyświetlany w źródle atrybutu podczas korzystania z usługi PIM
Podczas próby dodania przypisania roli z warunkiem przy użyciu usługi Microsoft Entra Privileged Identity Management (PIM), Principal nie pojawia się na liście Źródło atrybutu.
Przyczyna
Usługa PIM obecnie nie obsługuje używania atrybutu principal w warunku przypisania roli.
Komunikaty o błędach w edytorze wizualizacji
Objaw — nie rozpoznano warunku
Po użyciu edytora kodu przejdź do edytora wizualizacji i wyświetlisz komunikat podobny do następującego:
The current expression cannot be recognized. Switch to the code editor to edit the expression or delete the expression and add a new one.
Przyczyna
Zaktualizowano warunek, którego edytor wizualny nie może przeanalizować.
Rozwiązanie
Rozwiąż wszelkie problemy z formatem lub składnią warunku . Alternatywnie można usunąć warunek i spróbować ponownie.
Objaw — atrybut nie stosuje błędu dla wcześniej zapisanego warunku
Po otwarciu wcześniej zapisanego warunku w edytorze wizualizacji zostanie wyświetlony następujący komunikat:
Attribute does not apply for the selected actions. Select a different set of actions.
Przyczyna
W maju 2022 r. akcja Odczytaj blob została zmieniona z następującego formatu:
!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'})
Aby wykluczyć Blob.List podoperację:
!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} AND NOT SubOperationMatches{'Blob.List'})
Jeśli utworzyłeś warunek z akcją Odczytu blobu przed majem 2022 r., możesz zobaczyć ten komunikat o błędzie w edytorze wizualnym.
Rozwiązanie
Otwórz okienko Wybierz akcję i wybierz ponownie akcję Odczytaj obiekt blob .
Objaw — atrybut nie stosuje błędu
Po wybraniu co najmniej jednej akcji w edytorze wizualizacji z istniejącym wyrażeniem zostanie wyświetlony następujący komunikat, a wcześniej wybrany atrybut zostanie usunięty:
Attribute does not apply for the selected actions. Select a different set of actions.
Przyczyna
Poprzednio wybrany atrybut nie ma już zastosowania do aktualnie wybranych akcji.
Rozwiązanie 1
W sekcji Dodawanie akcji wybierz akcję, która ma zastosowanie do wybranego atrybutu. Aby uzyskać listę działań magazynowania obsługiwanych przez każdy atrybut, zobacz Akcje i atrybuty warunków przypisywania ról dla magazynu obiektów BLOB w Azure oraz Akcje i atrybuty warunków przypisywania ról dla kolejek w Azure.
Rozwiązanie 2
W sekcji Buduj wyrażenie wybierz atrybut, który ma zastosowanie do aktualnie wybranych działań. Aby uzyskać listę atrybutów magazynowania obsługiwanych przez każdą akcję magazynowania, zobacz Akcje i atrybuty warunków przypisywania ról dla Azure Blob Storage oraz Akcje i atrybuty warunków przypisywania ról dla kolejek Azure.
Objaw — atrybut nie ma zastosowania w tym ostrzeżeniu kontekstowym
Po wprowadzeniu zmian w edytorze kodu, a następnie przełączeniu do edytora wizualizacji zostanie wyświetlony następujący komunikat, a wcześniej wybrany atrybut zostanie usunięty:
Attribute does not apply in this context. Use a different role assignment scope or remove the expression.
Przyczyna
Określony atrybut nie jest dostępny w bieżącym zakresie, na przykład użycie Version ID na koncie przechowywania z włączoną hierarchiczną nazwą przestrzeni.
Rozwiązanie
Jeśli chcesz użyć aktualnie określonego atrybutu, utwórz warunek przypisania roli w innym zakresie, takim jak zakres grupy zasobów. Możesz też usunąć i ponownie utworzyć wyrażenie przy użyciu aktualnie wybranych akcji.
Objaw — błąd nie rozpoznano atrybutu
Po wprowadzeniu zmian w edytorze kodu, a następnie przełączeniu do edytora wizualizacji zostanie wyświetlony następujący komunikat, a wcześniej wybrany atrybut zostanie usunięty:
Attribute is not recognized. Select a valid attribute or remove the expression.
Przyczyna
Określony atrybut nie jest rozpoznawany, prawdopodobnie z powodu literówki.
Rozwiązanie
W edytorze kodu znajdź i popraw literówkę. Możesz też usunąć istniejące wyrażenie i wybrać atrybut za pomocą edytora wizualizacji.
Objaw — wartość atrybutu jest nieprawidłowa
Po wprowadzeniu zmian w edytorze kodu, a następnie przełączeniu do edytora wizualizacji zostanie wyświetlony następujący komunikat, a wcześniej wybrany atrybut zostanie usunięty:
Attribute value is invalid. Select another attribute or value.
Przyczyna
Prawa strona wyrażenia zawiera atrybut lub wartość, która nie jest prawidłowa.
Rozwiązanie
Użyj edytora wizualizacji, aby wybrać atrybut lub określić wartość.
Problem – błąd: nie wybrano żadnych akcji
Po usunięciu wszystkich akcji w edytorze wizualizacji zostanie wyświetlony następujący komunikat:
No actions selected. Select one or more actions to edit expressions.
Przyczyna
Istnieje wyrażenie, ale nie wybrano żadnych akcji jako celu.
Rozwiązanie
W sekcji Dodawanie akcji dodaj co najmniej jedną akcję, dla której ma być przeznaczone wyrażenie.
Objaw — brak dostępnych opcji błędu
Podczas próby dodania wyrażenia zostanie wyświetlony następujący komunikat:
No options available
Przyczyna
Wybrano opcję kierowania wielu akcji i nie ma żadnych atrybutów, które mają zastosowanie do wszystkich aktualnie wybranych akcji.
Rozwiązanie
W sekcji Dodawanie akcji wybierz mniej akcji do wykonania. Aby celować w akcje, które usunąłeś, dodaj wiele warunków.
Objaw — nie znaleziono identyfikatorów definicji roli
Podczas próby dodania wyrażenia zostanie wyświetlony następujący komunikat:
Cannot find built-in or custom role definitions with IDs: <role IDs>. These IDs were removed. Check that the IDs are valid and try to add again. You can also refresh the page or sign out and sign in again.
Przyczyna
Co najmniej jeden identyfikator definicji roli, który próbowano dodać dla atrybutu Identyfikator definicji roli , nie został znaleziony lub nie ma poprawnego formatu identyfikatora GUID: 00000000-0000-0000-0000-000000000000.
Rozwiązanie
Użyj edytora warunków, aby wybrać rolę. Jeśli niedawno dodałeś rolę niestandardową, odśwież stronę lub wyloguj się, a następnie zaloguj ponownie.
Problem — nie znaleziono identyfikatorów głównych
Podczas próby dodania wyrażenia zostanie wyświetlony następujący komunikat:
Cannot find users, groups, or service principals in Azure Active Directory with principal IDs: <principal IDs>. These IDs were removed. Check that the IDs are valid and try to add again. You can also refresh the page or sign out and sign in again.
Przyczyna
Nie odnaleziono co najmniej jednego identyfikatora podmiotu zabezpieczeń, który próbowano dodać dla atrybutu Identyfikator podmiotu zabezpieczeń lub nie ma poprawnego formatu GUID: 00000000-0000-0000-0000-000000000000.
Rozwiązanie
Użyj edytora warunków, aby wybrać główny element. Jeśli niedawno dodano główny podmiot, odśwież stronę lub wyloguj się i zaloguj się ponownie.
Komunikaty o błędach w programie Azure PowerShell
Objaw — atrybut zasobu nie jest prawidłowym błędem
Podczas próby dodania przypisania roli z warunkiem przy użyciu programu Azure PowerShell występuje błąd podobny do następującego:
New-AzRoleAssignment : Resource attribute
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$> is not valid.
Przyczyna
Jeśli warunek zawiera znak dolara ($), musisz go poprzedzić znakiem odwrotnego cudzysłowu (`).
Rozwiązanie
Dodaj backtick (`) przed każdym znakiem dolara. Poniżej przedstawiono przykład. Aby uzyskać więcej informacji na temat reguł cudzysłowu w programie PowerShell, zobacz About quoting Rules (Informacje o regułach cytowania).
$condition = "((!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} AND NOT SubOperationMatches{'Blob.List'})) OR (@Resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<`$key_case_sensitive`$>] StringEquals 'Cascade'))"
Objaw — błąd podczas kopiowania i wklejania warunku
Przyczyna
Jeśli używasz programu PowerShell i skopiujesz warunek z dokumentu, może on zawierać znaki specjalne, które powodują następujący błąd. Niektóre edytory (takie jak Microsoft Word) dodają znaki sterujące podczas formatowania tekstu, który nie jest wyświetlany.
The given role assignment condition is invalid.
Rozwiązanie
Jeśli skopiowałeś warunek z edytora tekstu sformatowanego i jesteś pewien, że warunek jest poprawny, usuń wszystkie spacje i przejścia do nowej linii, a następnie dodaj ponownie odpowiednie spacje. Alternatywnie użyj edytora zwykłego tekstu lub edytora kodu, takiego jak Visual Studio Code.
Komunikaty o błędach w interfejsie wiersza polecenia platformy Azure
Objaw — atrybut zasobu nie jest prawidłowym błędem
Podczas próby dodania przypisania roli z warunkiem przy użyciu interfejsu wiersza polecenia platformy Azure występuje błąd podobny do następującego:
Resource attribute Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$> is not valid.
Przyczyna
Jeśli warunek zawiera znak dolara ($), musisz poprzedzić go ukośnikiem odwrotnym (\).
Rozwiązanie
Dodaj ukośnik odwrotny (\) przed każdym znakiem dolara. Poniżej przedstawiono przykład. Aby uzyskać więcej informacji na temat zasad użycia cudzysłowów w powłoce Bash, zobacz Podwójne cudzysłowy.
condition="((!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} AND NOT SubOperationMatches{'Blob.List'})) OR (@Resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<\$key_case_sensitive\$>] StringEquals 'Cascade'))"
Objaw — nierozpoznany błąd argumentów
Podczas próby dodania przypisania roli z warunkiem przy użyciu interfejsu wiersza polecenia platformy Azure występuje błąd podobny do następującego:
az: error: unrecognized arguments: --description {description} --condition {condition} --condition-version 2.0
Przyczyna
Prawdopodobnie używasz starszej wersji interfejsu wiersza polecenia platformy Azure, która nie obsługuje parametrów warunku przypisania roli.
Rozwiązanie
Przeprowadź aktualizację do najnowszej wersji interfejsu wiersza polecenia platformy Azure (2.18 lub nowszej). Aby uzyskać więcej informacji, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Objaw — błąd przy przypisywaniu ciągu warunku do zmiennej w powłoce Bash
Podczas próby przypisania ciągu warunku do zmiennej w Bashu, pojawi się komunikat bash: !: event not found.
Przyczyna
W powłoce Bash, jeśli funkcja rozszerzania historii jest włączona, możesz zobaczyć komunikat bash: !: event not found z powodu wykrzyknika (!).
Rozwiązanie
Wyłącz rozszerzenie historii za pomocą polecenia set +H. Aby ponownie włączyć rozszerzenie historii, użyj polecenia set -H.
Komunikaty o błędach w interfejsie API
Objaw — odpowiedź HTTP 403 Zabronione podczas usuwania przypisania roli
Rozważ podmiot, który ma uprawnienia do modyfikowania przypisań ról, a uprawnienia te obejmują również warunek ABAC. Jeśli podmiot zabezpieczeń próbuje usunąć przypisanie roli, które zostało już usunięte lub nie istnieje, otrzymuje odpowiedź HTTP 403 Forbidden zamiast oczekiwanej odpowiedzi HTTP 204 No Content.
Przyczyna
Jeśli główna jednostka ma uprawnienia, włączające warunek ABAC, ten system próbuje odczytać atrybut podczas sprawdzania warunku. Jeśli atrybut nie istnieje, może to spowodować nieoczekiwaną odpowiedź zamiast oczekiwanego wyniku.
Rozwiązanie
W przypadku obsługi odpowiedzi na uprawnienia autoryzacji, które również zawierają warunek, należy również obsłużyć odpowiedź 403 Forbidden. Odpowiedź 403 Forbidden może potencjalnie wskazywać na niewystarczające uprawnienia, że przypisanie roli zostało już usunięte lub że przypisanie roli nie istnieje.