Konfigurace řízení přístupu na základě role pomocí zásad přístupu k datům

Správa přístupu k instanci Azure Cache for Redis je důležitá k zajištění toho, aby měli správní uživatelé přístup ke správné sadě dat a příkazů. Ve verzi 6 Redis byl zaveden seznam řízení přístupu (ACL). Seznam ACL omezuje, který uživatel může spouštět určité příkazy, a klíče, ke kterým má uživatel přístup. Pomocí příkazu DEL můžete například zakázat odstranění klíčů v mezipaměti konkrétním uživatelům.

Azure Cache for Redis teď integruje tuto funkci seznamu ACL s ID Microsoft Entra, abyste mohli nakonfigurovat zásady přístupu k datům pro instanční objekt a spravovanou identitu vaší aplikace.

Azure Cache for Redis nabízí tři předdefinované zásady přístupu: Vlastník dat, Přispěvatel dat a Čtenář dat. Pokud předdefinované zásady přístupu nevyhovují vašim požadavkům na ochranu a izolaci dat, můžete vytvořit a použít vlastní zásady přístupu k datům, jak je popsáno v tématu Konfigurace vlastních zásad přístupu k datům.

Rozsah dostupnosti

Úroveň Basic, Standard a Premium Enterprise, Enterprise Flash
Dostupnost Yes No

Předpoklady a omezení

  • Zásady seznamu ACL a přístupu k datům v Azure Cache for Redis se nepodporují v instancích Azure Cache for Redis, které používají Redis verze 4.
  • Zásady seznamu ACL a přístupu k datům Redis nejsou podporované v instancích Azure Cache for Redis, které závisí na cloudových službách.
  • Ověřování a autorizace Microsoft Entra se podporuje jenom pro připojení SSL.
  • Některé příkazy Redis jsou blokované.

Oprávnění pro zásady přístupu k datům

Jak je uvedeno v seznamu řízení přístupu Redis, seznam ACL v Redis verze 6.0 umožňuje konfigurovat přístupová oprávnění pro tři oblasti:

Kategorie příkazů

Redis vytvořil seskupení příkazů, jako jsou příkazy pro správu, nebezpečné příkazy atd. kvůli snadnějšímu nastavení oprávnění pro skupinu příkazů.

  • Slouží +@commandcategory k povolení kategorie příkazů.
  • Použití -@commandcategory k zakázání kategorie příkazů

Tyto příkazy jsou stále blokované. Následující skupiny jsou užitečné kategorie příkazů, které Redis podporuje. Další informace okategoriích

  • admin
    • Příkazy pro správu Normální aplikace je nikdy nepotřebují používat, včetně MONITOR, SHUTDOWNa dalších.
  • dangerous
    • Potenciálně nebezpečné příkazy. Každý by měl být považován za opatrně z různých důvodů, včetně FLUSHALL, RESTORESORT, KEYS, , , CLIENT, DEBUG, , INFO, CONFIGa dalších.
  • keyspace
    • Zápis nebo čtení z klíčů, databází nebo jejich metadat způsobem, který je nezávislý na typu, včetně , , , , DBSIZETTLKEYSFLUSHALLEXPIREEXISTSRENAMEa dalších. DUMPRESTOREDEL Příkazy, které mohou změnit prostor klíčů, klíč nebo metadata, mají také kategorii zápisu. Příkazy, které čtou jenom prostor klíčů, klíč nebo metadata, mají kategorii čtení.
  • pubsub
    • Příkazy související s pubSub.
  • read
    • Čtení z klíčů, hodnot nebo metadat Příkazy, které nepracují s klíči, nemají ani čtení nebo zápis.
  • set
    • Datový typ: sady související.
  • sortedset
    • Datový typ: Seřazené sady související.
  • stream
    • Datový typ: datové proudy související.
  • string
    • Datový typ: řetězce související.
  • write
    • Zápis do klíčů (hodnoty nebo metadata)

Příkazy

Příkazy umožňují určit, které konkrétní příkazy může spustit konkrétní uživatel Redis.

  • Slouží +command k povolení příkazu.
  • Slouží -command k zakázání příkazu.

Klávesy

Klíče umožňují řídit přístup ke konkrétním klíčům nebo skupinám klíčů uložených v mezipaměti.

  • Slouží ~<pattern> k zadání vzoru pro klíče.

  • Použijte buď ~* nebo allkeys k označení, že oprávnění kategorie příkazů platí pro všechny klíče v instanci mezipaměti.

Určení oprávnění

Pokud chcete zadat oprávnění, musíte vytvořit řetězec, který se uloží jako vlastní zásady přístupu, a pak tento řetězec přiřadit uživateli Azure Cache for Redis.

Následující seznam obsahuje některé příklady řetězců oprávnění pro různé scénáře.

  • Povolit aplikaci spouštět všechny příkazy na všech klíčích

    Řetězec oprávnění: +@all allkeys

  • Povolit aplikaci spouštět pouze příkazy pro čtení

    Řetězec oprávnění: +@read ~*

  • Povolit aplikaci spustit kategorii příkazu pro čtení a nastavit příkaz na klíčích s předponou Az.

    Řetězec oprávnění: +@read +set ~Az*

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, ve které chcete nakonfigurovat ověřování založené na tokenech Microsoft Entra.

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

    Snímek obrazovky se zvýrazněnou možností Konfigurace přístupu k datům v nabídce Prostředek

  3. Vyberte Přidat a zvolte Nové zásady přístupu.

    Snímek obrazovky znázorňující formulář pro přidání vlastních zásad přístupu

  4. Zadejte název zásady přístupu.

  5. Nakonfigurujte oprávnění podle vašich požadavků.

  6. Pokud chcete přidat uživatele k zásadám přístupu pomocí ID Microsoft Entra, musíte nejprve povolit MICROSOFT Entra ID výběrem možnosti Ověřování z nabídky Prostředek.

  7. Jako kartu v pracovním podokně vyberte Povolit ověřování Microsoft Entra.

  8. Pokud ještě není zaškrtnuté, zaškrtněte políčko Povolit ověřování Microsoft Entra a vyberte OK. Potom vyberte Uložit.

    Snímek obrazovky s autorizací přístupu k ID Microsoft Entra

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

    Důležité

    Po dokončení operace povolení se uzly v instanci mezipaměti restartují, aby se načetla 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.

Konfigurace klienta Redis tak, aby používal Microsoft Entra ID

Teď, když jste nakonfigurovali zásady přístupu uživatelů a dat Redis pro konfiguraci řízení přístupu na základě role, musíte aktualizovat pracovní postup klienta tak, aby podporoval ověřování pomocí konkrétního uživatele nebo hesla. Informace o tom, jak nakonfigurovat klientskou aplikaci pro připojení k instanci mezipaměti jako konkrétního uživatele Redis, najdete v tématu Konfigurace klienta Redis tak, aby používal Microsoft Entra.

Další kroky