Condividi tramite


Usare Microsoft Entra per l'autenticazione della cache con Azure Managed Redis (anteprima)

Azure Managed Redis (anteprima) offre due metodi per l'autenticazione dell'istanza della cache: chiavi di accesso e Microsoft Entra.

Anche se l'autenticazione tramite chiave di accesso è semplice, presenta una serie di problemi relativi alla sicurezza e alla gestione delle password. In questo articolo si apprenderà invece come usare un token di Microsoft Entra per l'autenticazione della cache.

Azure Managed Redis offre un meccanismo di autenticazione senza password tramite l'integrazione con Microsoft Entra. All'Entra ID configurato per la connessione a Azure Managed Redis sono assegnate le stesse autorizzazioni disponibili con l'uso delle chiavi di accesso.

Questo articolo illustra come usare l'entità servizio o l'identità gestita per connettersi all'istanza di Redis.

Prerequisiti e limitazioni

Importante

Dopo aver stabilito una connessione usando un token Microsoft Entra, le applicazioni client devono aggiornare periodicamente il token Microsoft Entra prima della scadenza. Le app devono quindi inviare un comando AUTH al server Redis per evitare di interrompere le connessioni. Per altre informazioni, vedere Configurare il client Redis per l'uso di Microsoft Entra.

Abilitare l'autenticazione di Microsoft Entra nella cache

  1. Nel portale di Azure selezionare l'istanza di Azure Managed Redis in cui si vuole configurare l'autenticazione basata su token Microsoft Entra.

  2. Nel menu Risorsa, selezionare Autenticazione.

  3. Nel riquadro di lavoro selezionare la scheda Autenticazione di Microsoft Entra.

  4. Selezionare Abilita autenticazione Microsoft Entra e scegliere il pulsante "Utente o entità servizio" oppure "Identità gestite". Al momento della selezione, all'utente immesso vengono assegnate automaticamente le stesse autorizzazioni disponibili quando si usano le chiavi di accesso. È anche possibile immettere un'identità gestita o un'entità servizio per connettersi all'istanza AMR.

    Screenshot che mostra l'opzione di autenticazione selezionata nel menu della risorsa e la casella di controllo Abilita l'autenticazione di Microsoft Entra.

Per informazioni su come usare Microsoft Entra con l'interfaccia della riga di comando di Azure, vedere le pagine di riferimento per l'identità.

Disabilitare l'autenticazione tramite chiave di accesso nella cache

L'uso di Microsoft Entra ID è il modo sicuro per connettere la cache. È consigliabile usare Microsoft Entra e disabilitare le chiavi di accesso.

Quando si disabilita l'autenticazione con chiave di accesso per un'istanza di Redis, tutte le connessioni client esistenti vengono terminate, indipendentemente dal fatto che usino le chiavi di accesso o l'autenticazione Microsoft Entra. Seguire le procedure consigliate per il client Redis per implementare meccanismi di ripetizione dei tentativi appropriati per riconnettere le connessioni basate su Microsoft Entra, se presenti.

Prima di disabilitare le chiavi di accesso:

  • L'autenticazione Microsoft Entra deve essere abilitata.

  • Per le cache con replica geografica, è necessario:

    1. Scollegare le cache.
    2. Disabilitare le chiavi di accesso.
    3. Ricollegare le cache.

Se si dispone di una cache in cui si usano le chiavi di accesso e si desidera disabilitare le chiavi di accesso, seguire questa procedura:

  1. Nella portale di Azure selezionare l'istanza di Redis gestita di Azure in cui si vogliono disabilitare le chiavi di accesso.

  2. Nel menu Risorsa, selezionare Autenticazione.

  3. Nel riquadro di lavoro selezionare Chiavi di accesso.

  4. Configurare l'autenticazione con chiavi di accesso da disabilitare.

    Screenshot che mostra le chiavi di accesso nel riquadro di lavoro con la casella di controllo Disabilita autenticazione con chiavi di accesso.

  5. Confermare di voler aggiornare la configurazione selezionando .

Importante

Quando l'impostazione Disabilita autenticazione con chiavi di accesso viene modificata per una cache, tutte le connessioni client esistenti che usano chiavi di accesso o Microsoft Entra, vengono terminate. Seguire le procedure consigliate per implementare meccanismi di ripetizione dei tentativi appropriati per la riconnessione delle connessioni basate su Microsoft Entra. Per altre informazioni, vedere Resilienza delle connessioni.

Configurare il client Redis per l'uso di Microsoft Entra

Poiché la maggior parte dei client Azure Managed Redis presuppone che per l'autenticazione si usino una password e una chiave di accesso, sarà probabilmente necessario aggiornare il flusso di lavoro del client in modo che supporti l'autenticazione mediante Microsoft Entra. Questa sezione illustra come configurare le applicazioni client per la connessione ad Azure Managed Redis usando un token Microsoft Entra.

Flusso di lavoro del client Microsoft Entra

  1. Configurare l'applicazione client per acquisire un token di Microsoft Entra per l'ambito, https://redis.azure.com/.default o acca5fbb-b7e4-4009-81f1-37e38fd66d78/.default, usando Microsoft Authentication Library (MSAL).

  2. Aggiornare la logica di connessione Redis per usare User e Password seguenti:

    • User: ID oggetto dell'identità gestita o dell'entità servizio
    • Password: token di Microsoft Entra acquisito tramite MSAL
  3. Assicurarsi che il client esegua automaticamente un comando AUTH di Redis prima della scadenza del token di Microsoft Entra usando:

    • User: ID oggetto dell'identità gestita o dell'entità servizio
    • Password: token di Microsoft Entra aggiornato periodicamente

Supporto della libreria client

La libreria Microsoft.Azure.StackExchangeRedis è un'estensione di StackExchange.Redis che consente di usare Microsoft Entra per autenticare le connessioni da un'applicazione client Redis ad Azure Managed Redis. L'estensione gestisce il token di autenticazione, incluso l'aggiornamento proattivo dei token prima della scadenza per mantenere le connessioni Redis persistenti per più giorni.

Questo esempio di codice mostra come usare il pacchetto NuGet Microsoft.Azure.StackExchangeRedis per connettersi all'istanza di Azure Managed Redis usando Microsoft Entra.

La tabella seguente include collegamenti a codici di esempio. Questi illustrano come connettersi all'istanza di Azure Managed Redis usando un token Microsoft Entra. Diverse librerie client sono incluse in più linguaggi.

Libreria client Lingua Collegamento al codice di esempio
StackExchange.Redis .NET Esempio di codice StackExchange.Redis
redis-py Python Codice di esempio redis-py
Jedis Java Esempio di codice Jedis
Lettuce Java Esempio di codice Lettuce
Redisson Java Esempio di codice Redisson
ioredis Node.js Esempio di codice ioredis
node-redis Node.js Esempio di codice node-redis

Procedure consigliate per l'autenticazione di Microsoft Entra

  • Configurare collegamenti privati o regole del firewall per proteggere la cache da un attacco Denial of Service.
  • Assicurarsi che l'applicazione client invii un nuovo token di Microsoft Entra almeno tre minuti prima della scadenza del token per evitare interruzioni della connessione.
  • Quando si chiama periodicamente il comando AUTH del server Redis, valutare se è opportuno aggiungere un jitter in modo da sfalsare i comandi AUTH. In questo modo, il server Redis non riceve troppi comandi AUTH contemporaneamente.