Sdílet prostřednictvím


Použití Microsoft Entra pro ověřování mezipaměti

Azure Cache for Redis nabízí dvě metody, jak ověřit instanci mezipaměti: přístupové klíče a Microsoft Entra.

I když je ověřování s přístupovým klíčem jednoduché, přináší to řadu problémů souvisejících se správou zabezpečení a hesel. V tomto článku se naopak dozvíte, jak pro ověřování mezipaměti používat token Microsoft Entra.

Služba Azure Cache for Redis nabízí mechanismus ověřování bez hesla díky integraci se službou Microsoft Entra. Tato integrace zahrnuje také funkce řízení přístupu na základě role zajišťované prostřednictvím seznamů řízení přístupu (ACL) podporovaných v opensourcových úložištích Redis.

Aby bylo možné použít integraci ACL, musí klientská aplikace převzít identitu entity Microsoft Entra, jako je instanční objekt nebo spravovaná identita, a připojit se k vaší mezipaměti. V tomto článku se dozvíte, jak se pomocí služebního principálu nebo spravované identity připojit k vaší mezipaměti. Dozvíte se také, jak udělit předdefinovaná oprávnění připojení na základě artefaktu Microsoft Entra, který se používá pro připojení.

Rozsah dostupnosti

Úroveň Základní, Standardní a Prémiový Enterprise, Enterprise Flash
Dostupnost Yes Ne

Předpoklady a omezení

  • Ověřování Microsoft Entra je podporováno pro připojení SSL a TLS 1.2 nebo vyšší.
  • Ověřování Microsoft Entra není podporováno na úrovních Enterprise služby Azure Cache for Redis Enterprise.
  • Skupiny Microsoft Entra nejsou podporovány.
  • Některé příkazy Redis jsou zablokované. Úplný seznam blokovaných příkazů najdete v tématu Příkazy Redis, které azure Cache for Redis nepodporuje.

Důležité

Po navázání připojení pomocí tokenu Microsoft Entra musí klientské aplikace před vypršením platnosti token Microsoft Entra pravidelně aktualizovat. Aplikace pak musí odeslat serveru Redis příkaz AUTH, aby nedošlo k narušení připojení. Další informace najdete v části Konfigurace klienta Redis pro použití Microsoft Entra.

Povolte ověřování Microsoft Entra na své mezipaměti

  1. Na webu Azure Portal vyberte instanci Azure Cache for Redis, ve které chcete nakonfigurovat ověřování založené na tokenech Microsoft Entra.

  2. V nabídce Prostředek vyberte Ověřování.

  3. V pracovním podokně vyberte kartu Ověřování Microsoft Entra.

  4. Vyberte Povolit ověřování Microsoft Entra a zadejte jméno platného uživatele. Uživatel, který zadáte, se automaticky přiřadí zásadám přístupu vlastníka dat ve výchozím nastavení, když vyberete Uložit. Můžete také zadat spravovanou identitu nebo aplikační objekt pro připojení k instanci vyrovnávací paměti.

    Snímek obrazovky znázorňuje ověřování vybrané v nabídce prostředků a zaškrtávací políčko Povolit ověřování Microsoft Entra.

  5. Automaticky otevírané dialogové okno se zeptá, jestli chcete aktualizovat konfiguraci, a informuje vás, že to trvá několik minut. Vyberte Ano.

    Důležité

    Jakmile je operace povolení dokončena, uzly v instanci mezipaměti se restartují pro načtení nové konfigurace. Tuto operaci doporučujeme provést během časového období údržby nebo mimo špičku pracovní doby. Operace může trvat až 30 minut.

Informace o tom, jak používat Microsoft Entra s rozhraním Azure CLI, najdete na referenčních stránkách pro identitu.

Zakázání ověřování přístupového klíče v mezipaměti

Používání Microsoft Entra je bezpečný způsob, jak připojit mezipaměť. Doporučujeme používat Microsoft Entra a zakázat přístupové klíče.

Když zakážete ověřování pomocí přístupového klíče pro mezipaměť, ukončí se všechna stávající klientská připojení bez ohledu na to, jestli používají přístupové klíče nebo ověřování Microsoft Entra. Doporučujeme postupovat podle osvědčených praktik pro klienta Redis a implementovat správné mechanismy pro opakování pokusů o připojení u připojení založených na Microsoft Entra, pokud nějaká existují.

Před zakázáním přístupových klíčů

  • Ujistěte se, že je povolené ověřování Microsoft Entra a máte nakonfigurovaného aspoň jednoho uživatele Redis.
  • Zajistěte, aby se všechny aplikace připojující k instanci mezipaměti přepnuly na použití ověřování Microsoft Entra.
  • Ujistěte se, že metriky Připojené klienty a připojené klienty používající token Microsoft Entra mají stejné hodnoty. Pokud hodnoty pro tyto dvě metriky nejsou stejné, znamená to, že stále existují připojení vytvořená pomocí přístupových klíčů a nikoli tokenu Microsoft Entra.
  • Zvažte zakázání přístupu během časového období plánované údržby instance mezipaměti.
  • Zakázání přístupových klíčů je k dispozici pouze pro mezipaměti úrovně Basic, Standard a Premium.

V případě geograficky replikovaných mezipamětí musíte:

  1. Zrušte propojení mezipamětí.
  2. Zakázání přístupových klíčů
  3. Znovu propojte mezipaměti.

Pokud máte mezipaměť, ve které jste použili přístupové klíče a chcete přístupové klíče zakázat, postupujte takto:

  1. Na webu Azure Portal vyberte instanci Azure Cache for Redis, ve které chcete zakázat přístupové klíče.

  2. V nabídce Prostředek vyberte Ověřování.

  3. V pracovním podokně vyberte Přístupové klávesy.

  4. Vyberte Zakázat ověřování přístupových klíčů. Potom vyberte Uložit.

    Snímek obrazovky zobrazující přístupové klíče v pracovním podokně s políčkem Zakázat ověřování přístupových klíčů.

  5. Potvrďte, že chcete aktualizovat konfiguraci výběrem možnosti Ano.

Důležité

Když se pro mezipaměť změní nastavení Zakázat ověřování přístupových klíčů, ukončí všechna stávající klientská připojení pomocí přístupových klíčů nebo služby Microsoft Entra. Použijte osvědčené postupy a implementujte vhodné mechanismy opakování pro opětovné připojení k připojením založeným na Microsoft Entra. Další informace najdete v tématu věnovaném odolnosti připojení.

Použijte konfiguraci přístupu k datům s vaší mezipamětí

Pokud chcete místo vlastníka dat Redis použít vlastní zásady přístupu, přejděte v nabídce Prostředek do konfiguracepřístupu k datům. Další informace najdete v tématu Konfigurace vlastních zásad přístupu k datům pro vaši aplikaci.

  1. Na webu Azure Portal vyberte instanci Azure Cache for Redis, do které chcete přidat konfiguraci přístupu k datům.

  2. V nabídce Prostředek vyberte Konfigurace přístupu k datům.

  3. Vyberte Přidat a pak vyberte Nový uživatel Redis.

  4. Na kartě Zásady přístupu vyberte jednu z dostupných zásad v tabulce: Vlastník dat, Přispěvatel dat nebo Čtenář dat. Pak vyberte Další: Uživatelé Redis.

    Snímek obrazovky zobrazující dostupné zásady přístupu

  5. Zvolte uživatele nebo služební principál či spravovanou identitu pro určení způsobu přiřazení přístupu k instanci Azure Cache for Redis. Pokud vyberete uživatele nebo instanční objekt a chcete přidat uživatele, musíte nejprve povolit ověřování Microsoft Entra.

  6. Pak zvolte Vybrat členy a zvolte Vybrat. Pak vyberte Další: Zkontrolovat a přiřadit.

    Snímek obrazovky zobrazující členy, které chcete přidat jako nové uživatele Redis

  7. Vyskakovací okno vás upozorní, že upgrade je trvalý a může způsobit krátké přerušení připojení. Vyberte Ano.

    Důležité

    Jakmile je operace povolení dokončena, uzly v instanci mezipaměti se restartují pro načtení nové konfigurace. Tuto operaci doporučujeme provést během časového období údržby nebo mimo špičku pracovní doby. Operace může trvat až 30 minut.

Nakonfigurujte svého klienta Redis k použití Microsoft Entra

Vzhledem k tomu, že většina klientů Azure Cache for Redis předpokládá, že k ověřování se používá heslo a přístupový klíč, budete pravděpodobně muset aktualizovat pracovní postup klienta tak, aby podporoval ověřování pomocí Microsoft Entra. V této části se dozvíte, jak nakonfigurovat klientské aplikace pro připojení ke službě Azure Cache for Redis pomocí tokenu Microsoft Entra.

Pracovní postup klienta Microsoft Entra

  1. Nakonfigurujte klientskou aplikaci tak, aby získala token Microsoft Entra pro rozsah, https://redis.azure.com/.default nebo acca5fbb-b7e4-4009-81f1-37e38fd66d78/.default pomocí knihovny MSAL (Microsoft Authentication Library).

  2. Aktualizujte logiku připojení Redis tak, aby používala následující UserPassword:

    • User = ID objektu vaší spravované identity nebo služebního objektu
    • Password = Token Microsoft Entra, který jste získali pomocí MSAL
  3. Zajistěte, aby váš klient před vypršením platnosti tokenu Microsoft Entra automaticky spouštěl příkaz Redis AUTH:

    • User = ID objektu vaší spravované identity nebo služebního objektu
    • Password = Pravidelně aktualizovaný token Microsoft Entra

Podpora klientských knihoven

Knihovna Microsoft.Azure.StackExchangeRedis je rozšíření StackExchange.Redis , které umožňuje používat Microsoft Entra k ověřování připojení z klientské aplikace Redis ke službě Azure Cache for Redis. Rozšíření spravuje ověřovací token, včetně proaktivního obnovování tokenů před vypršením jejich platnosti, aby se zachovala trvalá připojení k Redis po dobu několika dnů.

Tento ukázkový kód ukazuje, jak se pomocí Microsoft.Azure.StackExchangeRedis balíčku NuGet připojit k instanci Azure Cache for Redis pomocí Microsoft Entra.

Následující tabulka obsahuje odkazy na ukázky kódu. Ukazují, jak se připojit k instanci Azure Cache for Redis pomocí tokenu Microsoft Entra. Různé klientské knihovny jsou k dispozici ve více jazycích.

Klientská knihovna Jazyk Odkaz na ukázkový kód
StackExchange.Redis .NET Ukázka kódu StackExchange.Redis
go-redis Jdi ukázka kódu pro go-redis
redis-py Python Ukázka kódu redis-py
Jedis Java Ukázka kódu Jedis
Lettuce Java Ukázka kódu Lettuce
Redisson Java Ukázka kódu Redisson
ioredis Node.js Ukázka kódu ioredis
node-redis Node.js Ukázka kódu node-redis

Osvědčené postupy pro ověřování Microsoft Entra

  • Nakonfigurujte privátní propojení nebo pravidla brány firewall pro ochranu mezipaměti před útokem na dostupnost služby.
  • Ujistěte se, že klientská aplikace odešle nový token Microsoft Entra alespoň tři minuty před vypršením platnosti tokenu, aby nedošlo k přerušení připojení.
  • Při pravidelném volání příkazu serveru AUTH Redis zvažte přidání náhodného zpoždění, aby AUTH příkazy byly rozloženy. Server Redis pak nebude přijímat příliš mnoho příkazů AUTH současně.