Delen via


Microsoft Entra gebruiken voor cacheverificatie

Azure Cache voor Redis biedt twee methoden voor verificatie bij uw cache-exemplaar: toegangssleutels en Microsoft Entra.

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. Deze integratie bevat ook functionaliteit voor op rollen gebaseerd toegangsbeheer die wordt geboden via toegangsbeheerlijsten (ACL's) die worden ondersteund in opensource 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. U leert ook 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 Nr.

Vereisten en beperkingen

Belangrijk

Nadat een verbinding tot stand is gebracht met behulp van een Microsoft Entra-token, moeten clienttoepassingen het Microsoft Entra-token periodiek vernieuwen voordat deze verloopt. Vervolgens moeten de apps een AUTH opdracht naar de Redis-server verzenden om te voorkomen dat verbindingen worden onderbroken. Zie Uw Redis-client configureren voor het gebruik van Microsoft Entra voor meer informatie.

Microsoft Entra-verificatie inschakelen in uw cache

  1. Selecteer in 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 in het werkvenster het tabblad Microsoft Entra-verificatie .

  4. Selecteer Microsoft Entra-verificatie inschakelen en voer de naam van een geldige gebruiker in. 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 het selectievakje Microsoft Entra-verificatie inschakelen.

  5. In een pop-updialoogvenster wordt gevraagd of u de configuratie wilt bijwerken en wordt u ervan op de hoogte gesteld dat het enkele minuten duurt. Selecteer Ja.

    Belangrijk

    Nadat de inschakeling is voltooid, worden de knooppunten in het cache-exemplaar opnieuw opgestart om de nieuwe configuratie te laden. U wordt aangeraden 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 met de Azure CLI.

Toegangssleutelverificatie uitschakelen in uw cache

Het gebruik van Microsoft Entra is de veilige manier om verbinding te maken met uw cache. U wordt aangeraden Microsoft Entra te gebruiken en toegangssleutels uit te schakelen.

Wanneer u verificatie van toegangssleutels voor een cache uitschakelt, worden alle bestaande clientverbindingen beëindigd, ongeacht of ze toegangssleutels of Microsoft Entra-verificatie gebruiken. Volg de aanbevolen best practices voor redis-clients om de juiste mechanismen voor opnieuw proberen te implementeren voor het opnieuw verbinden van op Microsoft Entra gebaseerde verbindingen, indien van toepassing.

Voordat u toegangssleutels uitschakelt:

  • Zorg ervoor dat Microsoft Entra-verificatie is ingeschakeld en u ten minste één Redis-gebruiker hebt geconfigureerd.

  • Zorg ervoor dat alle toepassingen die verbinding maken met uw cache-exemplaar overschakelen naar het gebruik van Microsoft Entra-verificatie.

  • Zorg ervoor dat de metrische gegevens verbonden clients en verbonden clients die gebruikmaken van Microsoft Entra-token dezelfde waarden hebben. Als de waarden voor deze twee metrische gegevens niet hetzelfde zijn, betekent dit dat er nog steeds enkele verbindingen zijn gemaakt met behulp van toegangssleutels en niet entra-token.

  • Overweeg om toegang uit te schakelen tijdens het geplande onderhoudsvenster voor uw cache-exemplaar.

  • Het uitschakelen van toegangssleutels is alleen beschikbaar voor caches in de Basic-, Standard- en Premium-laag.

  • Voor geo-gerepliceerde caches moet u het volgende doen:

    1. Ontkoppel de caches.
    2. Toegangssleutels uitschakelen.
    3. Koppel de caches opnieuw.

Als u een cache hebt waarin toegangssleutels worden gebruikt en u toegangssleutels wilt uitschakelen, volgt u deze procedure:

  1. Selecteer in Azure Portal het Azure Cache voor Redis exemplaar waar u toegangssleutels wilt uitschakelen.

  2. Selecteer Verificatie in het menu Resource.

  3. Selecteer Toegangssleutels in het werkvenster.

  4. Selecteer Verificatie van toegangssleutels uitschakelen. Selecteer vervolgens Opslaan.

    Schermopname van toegangssleutels in het werkvenster met het selectievakje Verificatie van toegangssleutels uitschakelen.

  5. Bevestig dat u uw configuratie wilt bijwerken door Ja te selecteren.

Belangrijk

Wanneer de instelling Verificatie van toegangssleutels uitschakelen voor een cache wordt gewijzigd, worden alle bestaande clientverbindingen, met behulp van toegangssleutels of Microsoft Entra, beëindigd. Volg de aanbevolen procedures voor het implementeren van de juiste mechanismen voor opnieuw proberen voor het opnieuw verbinden van op Microsoft Entra gebaseerde verbindingen. Zie Verbindingstolerantie voor meer informatie.

Configuratie voor 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 waaraan u de configuratie voor gegevenstoegang wilt toevoegen.

  2. Selecteer Data Access Configuration in het menu Resource.

  3. Selecteer Toevoegen en selecteer vervolgens Nieuwe Redis-gebruiker.

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

    Schermopname van het beschikbare toegangsbeleid.

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

  6. Kies vervolgens Leden selecteren en kies Selecteren. Selecteer vervolgens Volgende: Beoordelen en toewijzen.

    Schermopname van leden die als nieuwe Redis-gebruikers moeten worden toegevoegd.

  7. In een pop-updialoogvenster wordt u geïnformeerd dat de upgrade permanent is en kan dit leiden tot een korte verbindingslip. Selecteer Ja.

    Belangrijk

    Nadat de inschakeling is voltooid, worden de knooppunten in het cache-exemplaar opnieuw opgestart om de nieuwe configuratie te laden. U wordt aangeraden 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

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. 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/.default acca5fbb-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 behulp van 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 uitbreiding waarmee StackExchange.Redis u Microsoft Entra kunt gebruiken om verbindingen van een Redis-clienttoepassing te verifiëren bij 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.

De volgende tabel bevat koppelingen naar codevoorbeelden. Ze laten zien hoe u verbinding maakt met uw Azure Cache voor Redis exemplaar met behulp van een Microsoft Entra-token. Verschillende clientbibliotheken zijn opgenomen in meerdere talen.

Clientbibliotheek Taal Koppeling naar voorbeeldcode
StackExchange.Redis .NET Codevoorbeeld StackExchange.Redis
redis-py Python codevoorbeeld redis-py
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 drie 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 willekeurige vertraging toe te voegen, zodat de AUTH opdrachten worden gefaseerd. Op deze manier ontvangt uw Redis-server niet te veel AUTH opdrachten tegelijk.