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, Współautor i Czytelnik. 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 (wersja zapoznawcza) 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.
  • Listy ACL usługi Redis i zasady dostępu do danych nie są obsługiwane w wystąpieniach usługi Azure Cache for Redis, które są zależne od usług w chmurze.
  • 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
    • Administracja istracyjne polecenia. Normalne aplikacje nigdy nie muszą ich używać, w tym MONITOR, SHUTDOWNi innych.
  • dangerous
    • Potencjalnie niebezpieczne polecenia. Każdy z nich należy wziąć pod uwagę z różnych powodów, w tym FLUSHALL, , DEBUGKEYSSORTCLIENTRESTOREINFO, CONFIGi innych.
  • keyspace
    • Zapisywanie lub odczytywanie z kluczy, baz danych lub ich metadanych w sposób niezależny od typu, w tym DEL, DUMPDBSIZERENAMERESTOREKEYSEXPIREEXISTSTTLi FLUSHALLnie 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.
  • 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 ~* lub allkeys , 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

  1. W witrynie Azure Portal wybierz wystąpienie usługi Azure Cache for Redis, w którym chcesz skonfigurować uwierzytelnianie oparte na tokenach firmy Microsoft.

  2. W menu Zasób wybierz pozycję Konfiguracja dostępu do danych (WERSJA ZAPOZNAWCZA).

    Screenshot showing Data Access Configuration highlighted in the Resource menu.

  3. Wybierz pozycję Dodaj i wybierz pozycję Nowe zasady dostępu.

    Screenshot showing a form to add custom access policy.

  4. Podaj nazwę zasad dostępu.

  5. Skonfiguruj uprawnienia zgodnie z wymaganiami.

  6. 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.

  7. Wybierz pozycję (WERSJA ZAPOZNAWCZA) Włącz uwierzytelnianie firmy Microsoft jako kartę w okienku roboczym.

  8. Jeśli nie zostało to jeszcze zaznaczone, zaznacz pole wyboru z etykietą (WERSJA ZAPOZNAWCZA) Włącz uwierzytelnianie firmy Microsoft i wybierz przycisk OK. Następnie wybierz pozycję Zapisz.

    Screenshot of Microsoft Entra ID access authorization.

  9. 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 używania identyfikatora Entra firmy Microsoft.

Następne kroki