Microsoft Entra-id (preview) gebruiken voor cacheverificatie

Azure Cache voor Redis biedt twee methoden voor verificatie bij uw cache-exemplaar:

Hoewel verificatie van toegangssleutels eenvoudig is, krijgt u een aantal uitdagingen met betrekking tot beveiliging en wachtwoordbeheer. In dit artikel leert u echter hoe u een Microsoft Entra-token gebruikt voor cacheverificatie.

Azure Cache voor Redis biedt een verificatiemechanisme zonder wachtwoord door integratie met Microsoft Entra-id (preview). Deze integratie bevat ook functionaliteit voor op rollen gebaseerd toegangsbeheer die wordt geboden via toegangsbeheerlijsten (ACL's) die worden ondersteund in open source Redis.

Als u de ACL-integratie wilt gebruiken, moet uw clienttoepassing de identiteit aannemen van een Microsoft Entra-entiteit, zoals een service-principal of beheerde identiteit, en verbinding maken met uw cache. In dit artikel leert u hoe u uw service-principal of beheerde identiteit gebruikt om verbinding te maken met uw cache en hoe u vooraf gedefinieerde machtigingen voor uw verbinding verleent op basis van het Microsoft Entra-artefact dat wordt gebruikt voor de verbinding.

Bereik van beschikbaarheid

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

Vereisten en beperkingen

  • Verificatie op basis van Microsoft Entra-id's wordt ondersteund voor SSL-verbindingen en TLS 1.2 of hoger.
  • Verificatie op basis van Microsoft Entra-id's wordt niet ondersteund voor Azure Cache voor Redis exemplaren die afhankelijk zijn van Cloud Services.
  • Verificatie op basis van Microsoft Entra-id wordt niet ondersteund in de Enterprise-lagen van Azure Cache voor Redis Enterprise.
  • Sommige Redis-opdrachten worden geblokkeerd. Zie Redis-opdrachten die niet worden ondersteund in Azure Cache voor Redis voor een volledige lijst met geblokkeerde opdrachten.

Belangrijk

Zodra een verbinding tot stand is gebracht met behulp van Microsoft Entra-token, moeten clienttoepassingen microsoft Entra-token periodiek vernieuwen voordat deze verloopt en een AUTH opdracht verzenden naar redis-server om onderbreking van verbindingen te voorkomen. Zie Uw Redis-client configureren voor het gebruik van Microsoft Entra-id voor meer informatie.

Microsoft Entra ID-verificatie inschakelen in uw cache

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

  2. Selecteer Verificatie in het menu Resource.

  3. Selecteer (PREVIEW) Microsoft Entra-verificatie inschakelen in het werkvenster.

  4. Selecteer Microsoft Entra-verificatie inschakelen en voer de naam in van een geldige gebruiker. De gebruiker die u invoert, wordt standaard automatisch toegangsbeleid voor gegevenseigenaar toegewezen wanneer u Opslaan selecteert. U kunt ook een beheerde identiteit of service-principal invoeren om verbinding te maken met uw cache-exemplaar.

    Schermopname van verificatie die is geselecteerd in het resourcemenu en de ingeschakelde Microsoft Entra-verificatie inschakelen.

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

Zie de referentiepagina's voor identiteit voor informatie over het gebruik van Microsoft Entra ID met Azure CLI.

Configuratie van gegevenstoegang gebruiken met uw cache

Als u een aangepast toegangsbeleid wilt gebruiken in plaats van Redis-gegevenseigenaar, gaat u naar de configuratie van Gegevenstoegang in het menu Resource. Zie Een aangepast beleid voor gegevenstoegang configureren voor uw toepassing voor meer informatie.

  1. Selecteer in Azure Portal het Azure Cache voor Redis exemplaar waar u gegevenstoegangsconfiguratie wilt toevoegen.

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

  3. Selecteer Toevoegen en kies Nieuwe Redis-gebruiker.

  4. Selecteer op het tabblad Toegangsbeleid een van de beschikbare beleidsregels in de tabel: Gegevenseigenaar, Gegevensbijdrager of Gegevenslezer. Selecteer vervolgens de volgende:Redis-gebruikers.

    Schermopname van het beschikbare toegangsbeleid.

  5. Kies de gebruiker of service-principal of beheerde identiteit om te bepalen hoe u toegang tot uw Azure Cache voor Redis-exemplaar toewijst. Als u Gebruiker of service-principal selecteert en u een gebruiker wilt toevoegen, moet u eerst Microsoft Entra-verificatie inschakelen.

  6. Selecteer vervolgens Leden selecteren en selecteer Selecteren. Selecteer vervolgens Volgende: Beoordelen en toewijzen. Schermopname van leden die moeten worden toegevoegd als nieuwe Redis-gebruikers.

  7. In een dialoogvenster wordt een pop-up weergegeven waarin wordt aangegeven dat de upgrade permanent is en dat er een korte verbindingslip kan ontstaan. 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

Omdat de meeste Azure Cache voor Redis-clients ervan uitgaan dat een wachtwoord en toegangssleutel worden gebruikt voor verificatie, moet u waarschijnlijk uw clientwerkstroom bijwerken om verificatie te ondersteunen met behulp van Microsoft Entra-id. In deze sectie leert u hoe u uw clienttoepassingen configureert om verbinding te maken met Azure Cache voor Redis met behulp van een Microsoft Entra-token.

Microsoft Entra-clientwerkstroom

  1. Configureer uw clienttoepassing voor het verkrijgen van een Microsoft Entra-token voor het bereik of https://redis.azure.com/.defaultacca5fbb-b7e4-4009-81f1-37e38fd66d78/.default, met behulp van de Microsoft Authentication Library (MSAL).

  2. Werk uw Redis-verbindingslogica bij om het volgende User te gebruiken en Password:

    • User = Object-id van uw beheerde identiteit of service-principal
    • Password = Microsoft Entra-token dat u hebt verkregen met MSAL
  3. Zorg ervoor dat uw client automatisch een Redis AUTH-opdracht uitvoert voordat uw Microsoft Entra-token verloopt met behulp van:

    • User = Object-id van uw beheerde identiteit of service-principal
    • Password = Microsoft Entra-token periodiek vernieuwd

Ondersteuning voor clientbibliotheek

De bibliotheek Microsoft.Azure.StackExchangeRedis is een extensie waarmee StackExchange.Redis u Microsoft Entra ID kunt gebruiken om verbindingen van een Redis-clienttoepassing te verifiëren met een Azure Cache voor Redis. De extensie beheert het verificatietoken, inclusief proactief vernieuwen van tokens voordat ze verlopen om permanente Redis-verbindingen over meerdere dagen te onderhouden.

In dit codevoorbeeld ziet u hoe u het Microsoft.Azure.StackExchangeRedis NuGet-pakket gebruikt om verbinding te maken met uw Azure Cache voor Redis-exemplaar met behulp van Microsoft Entra-id.

De volgende tabel bevat koppelingen naar codevoorbeelden, die laten zien hoe u verbinding maakt met uw Azure Cache voor Redis exemplaar met behulp van een Microsoft Entra-token. Een groot aantal clientbibliotheken is opgenomen in meerdere talen.

Clientbibliotheek Taal Koppeling naar voorbeeldcode
StackExchange.Redis .NET Codevoorbeeld StackExchange.Redis
redis-py Python redis-py-codevoorbeeld
Jedis Java Voorbeeld van Jedis-code
Lettuce Java Voorbeeld van slacode
Redisson Java Voorbeeld van redisson-code
ioredis Node.js ioredis-codevoorbeeld
node-redis Node.js codevoorbeeld node-redis

Aanbevolen procedures voor Microsoft Entra-verificatie

  • Configureer privékoppelingen of firewallregels om uw cache te beschermen tegen een Denial of Service-aanval.

  • Zorg ervoor dat uw clienttoepassing ten minste 3 minuten voor het verlopen van het token een nieuw Microsoft Entra-token verzendt om onderbreking van de verbinding te voorkomen.

  • Wanneer u de Redis-serveropdracht AUTH periodiek aanroept, kunt u overwegen om een jitter toe te voegen, zodat de AUTH opdrachten worden gespreid en uw Redis-server niet tegelijkertijd veel AUTH opdrachten ontvangt.