Op rollen gebaseerd toegangsbeheer configureren met Gegevenstoegangsbeleid

Het beheren van de toegang tot uw Azure Cache voor Redis-exemplaar is essentieel om ervoor te zorgen dat de juiste gebruikers toegang hebben tot de juiste set gegevens en opdrachten. In Redis versie 6 is de ACL (Access Control List ) geïntroduceerd. ACL beperkt welke gebruiker bepaalde opdrachten kan uitvoeren en de sleutels waartoe een gebruiker toegang heeft. U kunt bijvoorbeeld voorkomen dat specifieke gebruikers sleutels in de cache verwijderen met behulp van de DEL-opdracht .

Azure Cache voor Redis integreert deze ACL-functionaliteit nu met Microsoft Entra ID, zodat u uw Beleid voor gegevenstoegang kunt configureren voor de service-principal en beheerde identiteit van uw toepassing.

Azure Cache voor Redis biedt drie ingebouwde toegangsbeleidsregels: Eigenaar, Inzender en Lezer. Als het ingebouwde toegangsbeleid niet voldoet aan uw vereisten voor gegevensbescherming en isolatie, kunt u uw eigen aangepaste beleid voor gegevenstoegang maken en gebruiken, zoals beschreven in Aangepast beleid voor gegevenstoegang configureren.

Bereik van beschikbaarheid

Laag Basic, Standard en Premium Enterprise, Enterprise Flash
Beschikbaarheid Ja (preview) Nee

Vereisten en beperkingen

  • Redis ACL- en Data Access-beleid worden niet ondersteund op Azure Cache voor Redis exemplaren waarop Redis versie 4 wordt uitgevoerd.
  • Redis ACL en Beleid voor gegevenstoegang worden niet ondersteund op Azure Cache voor Redis exemplaren die afhankelijk zijn van Cloud Services.
  • Microsoft Entra-verificatie en -autorisatie worden alleen ondersteund voor SSL-verbindingen.
  • Sommige Redis-opdrachten worden geblokkeerd.

Machtigingen voor uw beleid voor gegevenstoegang

Zoals beschreven in Redis Access Control List, staat ACL in Redis versie 6.0 het configureren van toegangsmachtigingen toe voor drie gebieden:

Opdrachtcategorieën

Redis heeft groeperingen van opdrachten gemaakt, zoals beheeropdrachten, gevaarlijke opdrachten, enzovoort, om het instellen van machtigingen voor een groep opdrachten eenvoudiger te maken.

  • Gebruiken +@commandcategory om een opdrachtcategorie toe te staan
  • Gebruiken -@commandcategory om een opdrachtcategorie niet toe te laten

Deze opdrachten worden nog steeds geblokkeerd. De volgende groepen zijn handige opdrachtcategorieën die Door Redis worden ondersteund. Zie de volledige lijst onder de kop Opdrachtcategorieën voor meer informatie over opdrachtcategorieën.

  • admin
    • Beheer istratieve opdrachten. Normale toepassingen hoeven deze, inclusief MONITOR, SHUTDOWNen andere, nooit te gebruiken.
  • dangerous
    • Potentieel gevaarlijke opdrachten. Elk moet worden overwogen met zorg om verschillende redenen, waaronder FLUSHALL, RESTORE, , SORT, CLIENTKEYSDEBUG, INFO, en CONFIGandere.
  • keyspace
    • Schrijven of lezen vanuit sleutels, databases of hun metagegevens op een agnostische manier, waaronder DEL, , RESTORE, DUMP, , EXISTSRENAME, DBSIZE, , KEYS, EXPIRE, , TTLen FLUSHALLmeer. Opdrachten die de keyspace, sleutel of metagegevens kunnen wijzigen, hebben ook de schrijfcategorie. Opdrachten die alleen de keyspace, sleutel of metagegevens lezen, hebben de leescategorie.
  • pubsub
    • PubSub-gerelateerde opdrachten.
  • read
    • Lezen vanuit sleutels, waarden of metagegevens. Opdrachten die niet met sleutels werken, hebben geen lees- of schrijfbewerkingen.
  • set
    • Gegevenstype: sets gerelateerd.
  • sortedset
    • Gegevenstype: gesorteerde sets gerelateerd.
  • stream
    • Gegevenstype: streams gerelateerd.
  • string
    • Gegevenstype: tekenreeksen gerelateerd.
  • write
    • Schrijven naar sleutels (waarden of metagegevens).

Opdracht

Met opdrachten kunt u bepalen welke specifieke opdrachten kunnen worden uitgevoerd door een bepaalde Redis-gebruiker.

  • Gebruik +command deze opdracht om een opdracht toe te staan.
  • Gebruik -command dit om een opdracht niet toe te laten.

Toetsen

Met sleutels kunt u de toegang tot specifieke sleutels of groepen sleutels beheren die zijn opgeslagen in de cache.

  • Gebruik ~<pattern> dit om een patroon voor sleutels op te geven.

  • Gebruik of ~*allkeys om aan te geven dat de machtigingen voor de opdrachtcategorie van toepassing zijn op alle sleutels in het cache-exemplaar.

Machtigingen opgeven

Als u machtigingen wilt opgeven, moet u een tekenreeks maken om op te slaan als aangepast toegangsbeleid en vervolgens de tekenreeks toewijzen aan uw Azure Cache voor Redis gebruiker.

De volgende lijst bevat enkele voorbeelden van machtigingstekenreeksen voor verschillende scenario's.

  • Toepassing toestaan om alle opdrachten op alle sleutels uit te voeren

    Tekenreeks voor machtigingen: +@all allkeys

  • Toestaan dat de toepassing alleen leesopdrachten uitvoert

    Tekenreeks voor machtigingen: +@read ~*

  • Hiermee staat u toe dat de toepassing leesopdrachtcategorie kan uitvoeren en de opdracht voor sleutels met voorvoegsel Azkan instellen.

    Tekenreeks voor machtigingen: +@read +set ~Az*

Een aangepast beleid voor gegevenstoegang voor uw toepassing configureren

  1. Selecteer in Azure Portal het Azure Cache voor Redis exemplaar waar u verificatie op basis van Microsoft Entra-tokens wilt configureren.

  2. Selecteer in het menu Resource (PREVIEW) Data Access-configuratie.

    Screenshot showing Data Access Configuration highlighted in the Resource menu.

  3. Selecteer Toevoegen en kies Nieuw toegangsbeleid.

    Screenshot showing a form to add custom access policy.

  4. Geef een naam op voor uw toegangsbeleid.

  5. Configureer machtigingen op basis van uw vereisten.

  6. Als u een gebruiker wilt toevoegen aan het toegangsbeleid met behulp van Microsoft Entra ID, moet u eerst Microsoft Entra-id inschakelen door Verificatie te selecteren in het menu Resource.

  7. Selecteer (PREVIEW) Schakel Microsoft Entra-verificatie in als het tabblad in het werkvenster.

  8. Als dit nog niet is ingeschakeld, schakelt u het selectievakje Inschakelen (PREVIEW) Microsoft Entra-verificatie in en selecteert u OK. Selecteer vervolgens Opslaan.

    Screenshot of Microsoft Entra ID access authorization.

  9. Er wordt een pop-updialoogvenster weergegeven waarin u wordt gevraagd of u de configuratie wilt bijwerken en u te laten weten dat het enkele minuten duurt. Selecteer Ja.

    Belangrijk

    Zodra de inschakeling is voltooid, worden de knooppunten in uw cache-exemplaar opnieuw opgestart om de nieuwe configuratie te laden. We raden u aan deze bewerking uit te voeren tijdens uw onderhoudsvenster of buiten uw piekuren. De bewerking kan tot 30 minuten duren.

Uw Redis-client configureren voor het gebruik van Microsoft Entra-id

Nu u redis-beleid voor gebruikers- en gegevenstoegang hebt geconfigureerd voor het configureren van op rollen gebaseerd toegangsbeheer, moet u uw clientwerkstroom bijwerken om verificatie te ondersteunen met behulp van een specifieke gebruiker/wachtwoord. Zie Uw Redis-client configureren voor het gebruik van Microsoft Entra-id voor meer informatie over het configureren van uw clienttoepassing om verbinding te maken met uw cache-exemplaar als een specifieke Redis-gebruiker.

Volgende stappen