Dela via


Använda Microsoft Entra för cacheautentisering med Azure Managed Redis (förhandsversion)

Azure Managed Redis (förhandsversion)erbjuder två metoder för att autentisera till din cacheinstans: åtkomstnycklar och Microsoft Entra.

Även om åtkomstnyckelautentisering är enkel, kommer den med en uppsättning utmaningar när det gäller säkerhet och lösenordshantering. I den här artikeln får du däremot lära dig hur du använder en Microsoft Entra-token för cacheautentisering.

Azure Managed Redis erbjuder en mekanism för lösenordsfri autentisering genom att integrera med Microsoft Entra. Det Entra-ID som konfigurerats för att ansluta till Azure Managed Redis tilldelas samma behörigheter som med åtkomstnycklar.

I den här artikeln får du lära dig hur du använder tjänstens huvudnamn eller hanterade identitet för att ansluta till din Redis-instans.

Förutsättningar och begränsningar

Viktigt!

När en anslutning har upprättats med hjälp av en Microsoft Entra-token måste klientprogram regelbundet uppdatera Microsoft Entra-token innan den upphör att gälla. Sedan måste apparna skicka ett AUTH kommando till Redis-servern för att undvika avbrott i anslutningarna. Mer information finns i Konfigurera redis-klienten så att den använder Microsoft Entra.

Aktivera Microsoft Entra-autentisering i cacheminnet

  1. I Azure Portal väljer du den Azure Managed Redis-instans där du vill konfigurera Microsoft Entra-tokenbaserad autentisering.

  2. På menyn Resurs väljer du Autentisering.

  3. I arbetsfönstret väljer du fliken Microsoft Entra-autentisering .

  4. Välj Aktivera Microsoft Entra-autentisering och välj knapparna "Användare eller tjänstens huvudnamn" eller "Hanterad identitet". Användaren du anger tilldelas automatiskt samma behörigheter som när du använder åtkomstnycklar när du väljer. Du kan också ange en hanterad identitet eller tjänstens huvudnamn för att ansluta till din AMR-instans.

    Skärmbild som visar autentisering som valts i resursmenyn och kryssrutan Aktivera Microsoft Entra-autentisering.

Information om hur du använder Microsoft Entra med Azure CLI finns i referenssidorna för identitet.

Inaktivera autentisering av åtkomstnycklar i cacheminnet

Att använda Microsoft Entra är det säkra sättet att ansluta din cache. Vi rekommenderar att du använder Microsoft Entra och inaktiverar åtkomstnycklar.

När du inaktiverar åtkomstnyckelautentisering för en Redis-instans avslutas alla befintliga klientanslutningar, oavsett om de använder åtkomstnycklar eller Microsoft Entra-autentisering. Följ de rekommenderade metodtipsen för Redis-klienten för att implementera lämpliga mekanismer för återförsök för att återansluta Eventuella Microsoft Entra-baserade anslutningar.

Innan du inaktiverar åtkomstnycklar:

  • Microsoft Entra-autentisering måste vara aktiverat.

  • För geo-replikerade cacheminnen måste du:

    1. Ta bort länk till cacheminnena.
    2. Inaktivera åtkomstnycklar.
    3. Länka om cacheminnena.

Om du har en cache där du använder åtkomstnycklar och vill inaktivera åtkomstnycklar följer du den här proceduren:

  1. I Azure Portal väljer du den Azure Managed Redis-instans där du vill inaktivera åtkomstnycklar.

  2. På menyn Resurs väljer du Autentisering.

  3. I arbetsfönstret väljer du Åtkomstnycklar.

  4. Konfigurera autentisering av åtkomstnycklar så att det inaktiveras.

    Skärmbild som visar åtkomstnycklar i arbetsfönstret med kryssrutan Inaktivera autentisering av åtkomstnycklar.

  5. Bekräfta att du vill uppdatera konfigurationen genom att välja Ja.

Viktigt!

När inställningen Inaktivera autentisering av åtkomstnycklar ändras för ett cacheminne avslutas alla befintliga klientanslutningar med hjälp av åtkomstnycklar eller Microsoft Entra. Följ metodtipsen för att implementera lämpliga mekanismer för återförsök för att återansluta Microsoft Entra-baserade anslutningar. Mer information finns i Anslutningsresiliens.

Konfigurera Redis-klienten så att den använder Microsoft Entra

Eftersom de flesta Azure Managed Redis-klienter förutsätter att ett lösenord och en åtkomstnyckel används för autentisering måste du förmodligen uppdatera klientarbetsflödet för att stödja autentisering med hjälp av Microsoft Entra. I det här avsnittet får du lära dig hur du konfigurerar dina klientprogram för att ansluta till Azure Managed Redis med hjälp av en Microsoft Entra-token.

Microsoft Entra-klientarbetsflöde

  1. Konfigurera klientprogrammet för att hämta en Microsoft Entra-token för omfång, https://redis.azure.com/.default eller acca5fbb-b7e4-4009-81f1-37e38fd66d78/.default, med hjälp av Microsoft Authentication Library (MSAL).

  2. Uppdatera Redis-anslutningslogik så att du använder följande User och Password:

    • User = Objekt-ID för din hanterade identitet eller tjänstens huvudnamn
    • Password = Microsoft Entra-token som du har köpt med hjälp av MSAL
  3. Kontrollera att klienten kör ett Redis AUTH-kommando automatiskt innan din Microsoft Entra-token upphör att gälla med hjälp av:

    • User = Objekt-ID för din hanterade identitet eller tjänstens huvudnamn
    • Password = Microsoft Entra-token uppdateras regelbundet

Stöd för klientbibliotek

Biblioteket Microsoft.Azure.StackExchangeRedis är ett tillägg som StackExchange.Redis gör att du kan använda Microsoft Entra för att autentisera anslutningar från ett Redis-klientprogram till en Azure Managed Redis. Tillägget hanterar autentiseringstoken, inklusive proaktiv uppdatering av token innan de upphör att gälla för att underhålla beständiga Redis-anslutningar under flera dagar.

Det här kodexemplet visar hur du använder Microsoft.Azure.StackExchangeRedis NuGet-paketet för att ansluta till din Azure Managed Redis-instans med hjälp av Microsoft Entra.

Följande tabell innehåller länkar till kodexempel. De visar hur du ansluter till din Azure Managed Redis-instans med hjälp av en Microsoft Entra-token. Olika klientbibliotek ingår i flera språk.

Klientbibliotek Språk Länk till exempelkod
StackExchange.Redis .NET StackExchange.Redis-kodexempel
redis-py Python redis-py-kodexempel
Jedis Java Jedis-kodexempel
Lettuce Java Exempel på salladskod
Redisson Java Redisson-kodexempel
ioredis Node.js ioredis-kodexempel
node-redis Node.js node-redis-kodexempel

Metodtips för Microsoft Entra-autentisering

  • Konfigurera privata länkar eller brandväggsregler för att skydda cacheminnet från en överbelastningsattack.
  • Se till att klientprogrammet skickar en ny Microsoft Entra-token minst tre minuter innan token upphör att gälla för att undvika anslutningsstörningar.
  • När du anropar Redis-serverkommandot AUTH med jämna mellanrum bör du överväga att lägga till ett jitter så att kommandona är förskjutna AUTH . På så sätt får inte Redis-servern för många AUTH kommandon samtidigt.