Konfigurowanie kontroli dostępu opartej na rolach przy użyciu zasad dostępu do danych
Zarządzanie dostępem do wystąpienia usługi Azure Cache for Redis ma kluczowe znaczenie dla zapewnienia, że odpowiedni użytkownicy mają dostęp do odpowiedniego zestawu danych i poleceń. W usłudze Redis w wersji 6 wprowadzono listę kontroli dostępu (ACL). Lista ACL ogranicza, do których użytkownik może wykonywać określone polecenia, oraz klucze, do których może uzyskiwać dostęp użytkownik. Na przykład można uniemożliwić określonym użytkownikom usuwanie kluczy w pamięci podręcznej przy użyciu polecenia DEL .
Usługa Azure Cache for Redis integruje teraz tę funkcję listy ACL z identyfikatorem Entra firmy Microsoft, aby umożliwić skonfigurowanie zasad dostępu do danych dla jednostki usługi i tożsamości zarządzanej aplikacji.
Usługa Azure Cache for Redis oferuje trzy wbudowane zasady dostępu: Właściciel danych, Współautor danych i Czytelnik danych. Jeśli wbudowane zasady dostępu nie spełniają wymagań dotyczących ochrony danych i izolacji, możesz utworzyć i użyć własnych niestandardowych zasad dostępu do danych zgodnie z opisem w temacie Konfigurowanie niestandardowych zasad dostępu do danych.
Zakres dostępności
Warstwa | Podstawowa, Standardowa i Premium | Enterprise, Enterprise Flash |
---|---|---|
Dostępność | Tak | Nie. |
Wymagania wstępne i ograniczenia
- Listy ACL usługi Redis i zasady dostępu do danych nie są obsługiwane w wystąpieniach usługi Azure Cache for Redis z uruchomioną usługą Redis w wersji 4.
- Uwierzytelnianie i autoryzacja firmy Microsoft Entra są obsługiwane tylko w przypadku połączeń SSL.
- Niektóre polecenia usługi Redis są zablokowane.
Uprawnienia do zasad dostępu do danych
Jak opisano na liście kontroli dostępu usługi Redis, lista ACL w usłudze Redis w wersji 6.0 umożliwia konfigurowanie uprawnień dostępu dla trzech obszarów:
Kategorie poleceń
Usługa Redis utworzyła grupowania poleceń, takich jak polecenia administracyjne, niebezpieczne polecenia itp., aby ułatwić ustawianie uprawnień do grupy poleceń.
- Użyj
+@commandcategory
polecenia , aby zezwolić na kategorię poleceń - Użyj
-@commandcategory
polecenia, aby nie zezwalać na kategorię poleceń
Te polecenia są nadal blokowane. Poniższe grupy to przydatne kategorie poleceń obsługiwane przez usługę Redis. Aby uzyskać więcej informacji na temat kategorii poleceń, zobacz pełną listę pod nagłówkiem Kategorie poleceń.
admin
- Polecenia administracyjne. Normalne aplikacje nigdy nie muszą ich używać, w tym
MONITOR
,SHUTDOWN
i innych.
- Polecenia administracyjne. Normalne aplikacje nigdy nie muszą ich używać, w tym
dangerous
- Potencjalnie niebezpieczne polecenia. Każdy z nich należy wziąć pod uwagę z różnych powodów, w tym
FLUSHALL
, ,DEBUG
KEYS
SORT
CLIENT
RESTORE
INFO
,CONFIG
i innych.
- Potencjalnie niebezpieczne polecenia. Każdy z nich należy wziąć pod uwagę z różnych powodów, w tym
keyspace
- Zapisywanie lub odczytywanie z kluczy, baz danych lub ich metadanych w sposób niezależny od typu, w tym
DEL
,DUMP
DBSIZE
RENAME
RESTORE
KEYS
EXPIRE
EXISTS
TTL
iFLUSHALL
nie tylko. Polecenia, które mogą modyfikować przestrzeń kluczy, klucz lub metadane, również mają kategorię zapisu. Polecenia odczytujące tylko przestrzeń kluczy, klucz lub metadane mają kategorię odczytu.
- Zapisywanie lub odczytywanie z kluczy, baz danych lub ich metadanych w sposób niezależny od typu, w tym
pubsub
- Polecenia związane z usługą PubSub.
read
- Odczytywanie z kluczy, wartości lub metadanych. Polecenia, które nie wchodzą w interakcje z kluczami, nie mają ani odczytu, ani zapisu.
set
- Typ danych: zestawy powiązane.
sortedset
- Typ danych: posortowane zestawy powiązane.
stream
- Typ danych: strumienie powiązane.
string
- Typ danych: powiązane ciągi.
write
- Zapisywanie w kluczach (wartości lub metadanych).
Polecenia
Polecenia umożliwiają kontrolowanie, które konkretne polecenia mogą być uruchamiane przez określonego użytkownika usługi Redis.
- Użyj
+command
polecenia , aby zezwolić na polecenie . - Użyj
-command
polecenia , aby nie zezwalać na polecenie.
Klucze
Klucze umożliwiają kontrolowanie dostępu do określonych kluczy lub grup kluczy przechowywanych w pamięci podręcznej.
Użyj
~<pattern>
polecenia , aby udostępnić wzorzec dla kluczy.Użyj polecenia
~*
luballkeys
, aby wskazać, że uprawnienia kategorii poleceń mają zastosowanie do wszystkich kluczy w wystąpieniu pamięci podręcznej.
Jak określić uprawnienia
Aby określić uprawnienia, należy utworzyć ciąg do zapisania jako niestandardowych zasad dostępu, a następnie przypisać ciąg do użytkownika usługi Azure Cache for Redis.
Poniższa lista zawiera kilka przykładów ciągów uprawnień dla różnych scenariuszy.
Zezwalaj aplikacji na wykonywanie wszystkich poleceń na wszystkich kluczach
Ciąg uprawnień:
+@all allkeys
Zezwalaj aplikacji na wykonywanie tylko poleceń odczytu
Ciąg uprawnień:
+@read ~*
Zezwalaj aplikacji na wykonywanie kategorii poleceń odczytu i ustawianie polecenia na kluczach z prefiksem
Az
.Ciąg uprawnień:
+@read +set ~Az*
Konfigurowanie niestandardowych zasad dostępu do danych dla aplikacji
W witrynie Azure Portal wybierz wystąpienie usługi Azure Cache for Redis, w którym chcesz skonfigurować uwierzytelnianie oparte na tokenach firmy Microsoft.
W menu Zasób wybierz pozycję Konfiguracja dostępu do danych.
Wybierz pozycję Dodaj i wybierz pozycję Nowe zasady dostępu.
Podaj nazwę zasad dostępu.
Skonfiguruj uprawnienia zgodnie z wymaganiami.
Aby dodać użytkownika do zasad dostępu przy użyciu identyfikatora Entra firmy Microsoft, musisz najpierw włączyć identyfikator Entra firmy Microsoft, wybierając pozycję Uwierzytelnianie w menu Zasób.
Wybierz pozycję Włącz uwierzytelnianie entra firmy Microsoft jako kartę w okienku roboczym.
Jeśli nie zostało to jeszcze zaznaczone, zaznacz pole wyboru z etykietą Włącz uwierzytelnianie firmy Microsoft i wybierz przycisk OK. Następnie wybierz pozycję Zapisz.
Zostanie wyświetlone okno podręczne z pytaniem, czy chcesz zaktualizować konfigurację, i informuje o tym, że zajmuje to kilka minut. Wybierz opcję Tak.
Ważne
Po zakończeniu operacji włączania węzły w wystąpieniu pamięci podręcznej są ponownie uruchamiane w celu załadowania nowej konfiguracji. Zalecamy wykonanie tej operacji w oknie obsługi lub poza godzinami pracy szczytu. Operacja może potrwać do 30 minut.
Konfigurowanie klienta usługi Redis do używania identyfikatora Entra firmy Microsoft
Po skonfigurowaniu zasad dostępu użytkowników i danych usługi Redis do konfigurowania kontroli dostępu opartej na rolach należy zaktualizować przepływ pracy klienta w celu obsługi uwierzytelniania przy użyciu określonego użytkownika/hasła. Aby dowiedzieć się, jak skonfigurować aplikację kliencką w celu nawiązania połączenia z wystąpieniem pamięci podręcznej jako określony użytkownik usługi Redis, zobacz Konfigurowanie klienta usługi Redis pod kątem korzystania z usługi Microsoft Entra.