Używanie identyfikatora Entra firmy Microsoft (wersja zapoznawcza) na potrzeby uwierzytelniania w pamięci podręcznej

Usługa Azure Cache for Redis oferuje dwie metody uwierzytelniania w wystąpieniu pamięci podręcznej:

Chociaż uwierzytelnianie za pomocą klucza dostępu jest proste, wiąże się z szeregiem wyzwań związanych z zarządzaniem zabezpieczeniami i hasłami. Z kolei w tym artykule dowiesz się, jak używać tokenu Entra firmy Microsoft do uwierzytelniania w pamięci podręcznej.

Usługa Azure Cache for Redis oferuje mechanizm uwierzytelniania bez hasła dzięki integracji z usługą Microsoft Entra ID (wersja zapoznawcza). Ta integracja obejmuje również funkcje kontroli dostępu opartej na rolach udostępniane za pośrednictwem list kontroli dostępu (ACL) obsługiwanych w usłudze Redis typu open source.

Aby korzystać z integracji listy ACL, aplikacja kliencka musi przyjąć tożsamość jednostki Microsoft Entra, takiej jak jednostka usługi lub tożsamość zarządzana, i połączyć się z pamięcią podręczną. Z tego artykułu dowiesz się, jak używać jednostki usługi lub tożsamości zarządzanej do łączenia się z pamięcią podręczną oraz jak udzielić wstępnie zdefiniowanych uprawnień połączenia na podstawie artefaktu firmy Microsoft Entra używanego na potrzeby połączenia.

Zakres dostępności

Warstwa Podstawowa, Standardowa i Premium Enterprise, Enterprise Flash
Dostępność Tak (wersja zapoznawcza) Nie.

Wymagania wstępne i ograniczenia

  • Uwierzytelnianie oparte na identyfikatorze Entra firmy Microsoft jest obsługiwane w przypadku połączeń SSL i protokołu TLS 1.2 lub nowszego.
  • Uwierzytelnianie oparte na identyfikatorze Entra firmy Microsoft nie jest obsługiwane w wystąpieniach usługi Azure Cache for Redis, które zależą od usług Cloud Services.
  • Uwierzytelnianie oparte na identyfikatorze Entra firmy Microsoft nie jest obsługiwane w warstwach Enterprise usługi Azure Cache for Redis Enterprise.
  • Niektóre polecenia usługi Redis są zablokowane. Aby uzyskać pełną listę zablokowanych poleceń, zobacz Polecenia redis nieobsługiwane w usłudze Azure Cache for Redis.

Ważne

Po nawiązaniu połączenia przy użyciu tokenu Microsoft Entra aplikacje klienckie muszą okresowo odświeżać token Microsoft Entra przed wygaśnięciem AUTH i wysyłać polecenie do serwera Redis, aby uniknąć zakłóceń połączeń. Aby uzyskać więcej informacji, zobacz Configure your Redis client to use Microsoft Entra ID (Konfigurowanie klienta usługi Redis pod kątem używania identyfikatora Entra firmy Microsoft).

Włączanie uwierzytelniania identyfikatora Entra firmy Microsoft w pamięci podręcznej

  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. Wybierz pozycję Uwierzytelnianie z menu Zasób.

  3. W okienku roboczym wybierz pozycję (WERSJA ZAPOZNAWCZA) Włącz uwierzytelnianie firmy Microsoft.

  4. Wybierz pozycję Włącz uwierzytelnianie firmy Microsoft Entra i wprowadź nazwę prawidłowego użytkownika. Wprowadzony użytkownik jest automatycznie przypisywany zasad dostępu właściciela danych domyślnie po wybraniu pozycji Zapisz. Możesz również wprowadzić tożsamość zarządzaną lub jednostkę usługi, aby nawiązać połączenie z wystąpieniem pamięci podręcznej.

    Zrzut ekranu przedstawiający uwierzytelnianie wybrane w menu zasobów i zaznaczoną opcję Włącz uwierzytelnianie firmy Microsoft Entra.

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

Aby uzyskać informacje na temat korzystania z identyfikatora Entra firmy Microsoft z interfejsem wiersza polecenia platformy Azure, zobacz strony referencyjne dotyczące tożsamości.

Korzystanie z konfiguracji dostępu do danych z pamięcią podręczną

Jeśli chcesz użyć niestandardowych zasad dostępu zamiast właściciela danych Usługi Redis, przejdź do pozycji Konfiguracja dostępu do danych w menu Zasób. Aby uzyskać więcej informacji, zobacz 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 dodać do konfiguracji dostępu do danych.

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

  3. Wybierz pozycję Dodaj i wybierz pozycję Nowy użytkownik usługi Redis.

  4. Na karcie Zasady dostępu wybierz jedną z dostępnych zasad w tabeli: Właściciel danych, Współautor danych lub Czytelnik danych. Następnie wybierz pozycję Dalej:Użytkownicy usługi Redis.

    Zrzut ekranu przedstawiający dostępne zasady dostępu.

  5. Wybierz jednostkę użytkownika lub jednostkę usługi lub tożsamość zarządzaną, aby określić sposób przypisywania dostępu do wystąpienia usługi Azure Cache for Redis. Jeśli wybierzesz pozycję Użytkownik lub jednostka usługi i chcesz dodać użytkownika, musisz najpierw włączyć uwierzytelnianie Entra firmy Microsoft.

  6. Następnie wybierz pozycję Wybierz członków i wybierz pozycję Wybierz. Następnie wybierz pozycję Dalej: Przejrzyj i przypisz. Zrzut ekranu przedstawiający członków do dodania jako nowych użytkowników usługi Redis.

  7. W oknie dialogowym zostanie wyświetlone okno podręczne z powiadomieniem, że uaktualnienie jest trwałe i może spowodować krótki blip połączenia. 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

Ponieważ większość klientów usługi Azure Cache for Redis zakłada, że hasło i klucz dostępu są używane do uwierzytelniania, prawdopodobnie trzeba zaktualizować przepływ pracy klienta w celu obsługi uwierzytelniania przy użyciu identyfikatora Entra firmy Microsoft. W tej sekcji dowiesz się, jak skonfigurować aplikacje klienckie w celu nawiązania połączenia z usługą Azure Cache for Redis przy użyciu tokenu entra firmy Microsoft.

Przepływ pracy klienta Firmy Microsoft Entra

  1. Skonfiguruj aplikację kliencką, aby uzyskać token entra firmy Microsoft dla zakresu https://redis.azure.com/.default lub acca5fbb-b7e4-4009-81f1-37e38fd66d78/.default, przy użyciu biblioteki Microsoft Authentication Library (MSAL).

  2. Zaktualizuj logikę połączenia usługi Redis, aby używać następujących elementów User i Password:

    • User = identyfikator obiektu tożsamości zarządzanej lub jednostki usługi
    • Password = Token firmy Microsoft Entra uzyskany przy użyciu biblioteki MSAL
  3. Upewnij się, że klient automatycznie wykonuje polecenie AUTH usługi Redis przed wygaśnięciem tokenu entra firmy Microsoft przy użyciu:

    • User = identyfikator obiektu tożsamości zarządzanej lub jednostki usługi
    • Password = Token Entra firmy Microsoft odświeżany okresowo

Obsługa biblioteki klienta

Biblioteka Microsoft.Azure.StackExchangeRedis jest rozszerzeniem StackExchange.Redis , które umożliwia używanie identyfikatora Entra firmy Microsoft do uwierzytelniania połączeń z aplikacji klienckiej Redis do usługi Azure Cache for Redis. Rozszerzenie zarządza tokenem uwierzytelniania, w tym proaktywne odświeżanie tokenów przed ich wygaśnięciem w celu utrzymania trwałych połączeń usługi Redis w ciągu wielu dni.

W tym przykładzie kodu pokazano, jak używać Microsoft.Azure.StackExchangeRedis pakietu NuGet do nawiązywania połączenia z wystąpieniem usługi Azure Cache for Redis przy użyciu identyfikatora Entra firmy Microsoft.

Poniższa tabela zawiera linki do przykładów kodu, które pokazują, jak nawiązać połączenie z wystąpieniem usługi Azure Cache for Redis przy użyciu tokenu entra firmy Microsoft. Wiele bibliotek klienckich jest dostępnych w wielu językach.

Biblioteka klienta Język Link do przykładowego kodu
StackExchange.Redis .NET Przykład kodu StackExchange.Redis
redis-py Python Przykładowy kod redis-py
Jedis Java Przykładowy kod usługi Jedis
Lettuce Java Przykładowy kod sałaty
Redisson Java Przykładowy kod Redisson
ioredis Node.js Przykład kodu ioredis
node-redis Node.js przykładowy kod node-redis

Najlepsze rozwiązania dotyczące uwierzytelniania w usłudze Microsoft Entra

  • Skonfiguruj łącza prywatne lub reguły zapory, aby chronić pamięć podręczną przed atakiem typu "odmowa usługi".

  • Upewnij się, że aplikacja kliencka wysyła nowy token firmy Microsoft Entra co najmniej 3 minuty przed wygaśnięciem tokenu, aby uniknąć zakłóceń połączenia.

  • W przypadku okresowego wywoływania polecenia serwera AUTH Redis należy rozważyć dodanie zakłócenia, tak aby AUTH polecenia zostały rozłożone, a serwer Redis nie otrzymuje wielu AUTH poleceń jednocześnie.