Eseguire l'autenticazione in Azure Key Vault

Completato

L'autenticazione con Key Vault funziona con Microsoft Entra ID, che è responsabile dell'autenticazione dell'identità di una determinata entità di sicurezza. Un'entità di sicurezza è qualsiasi elemento che può richiedere l'accesso alle risorse di Azure. Sono inclusi:

  • Utenti: persone reali con account in Microsoft Entra ID.
  • Gruppi: raccolte di utenti. Le autorizzazioni concesse al gruppo si applicano a tutti i relativi membri.
  • Principali di servizio: rappresentano app o servizi (non persone). Si pensi a un account utente per un'app.

Per le applicazioni esistono due modi principali per ottenere un'entità servizio:

  • Usare un'identità gestita (scelta consigliata): Azure crea e gestisce automaticamente il principale del servizio. L'app può accedere in modo sicuro ad altri servizi di Azure senza archiviare le credenziali. Funziona con servizi come Servizio app, Funzioni di Azure e Macchine virtuali.

  • Registrare l'app manualmente: Registrare l'app in Microsoft Entra ID. In questo modo viene creata un'entità servizio e un oggetto app che identifica l'app in tutti i tenant.

Annotazioni

È consigliabile usare un'identità gestita assegnata dal sistema.

Autenticazione a Key Vault nel codice dell'applicazione

Key Vault SDK usa la libreria client di Identità di Azure, che consente di eseguire facilmente l'autenticazione a Key Vault in ambienti con lo stesso codice. La tabella seguente fornisce informazioni sulle librerie client di Identità di Azure:

.NET Pitone Giava JavaScript
Azure Identity SDK .NET Azure Identity SDK Python Azure Identity SDK Java Azure Identity SDK JavaScript

Autenticazione in Key Vault con REST

I token di accesso devono essere inviati al servizio usando l'intestazione di autorizzazione HTTP:

PUT /keys/MYKEY?api-version=<api_version>  HTTP/1.1  
Authorization: Bearer <access_token>

Quando non viene fornito un token di accesso o quando il servizio rifiuta un token, viene restituito un HTTP 401 errore al client e include l'intestazione WWW-Authenticate , ad esempio:

401 Not Authorized  
WWW-Authenticate: Bearer authorization="…", resource="…"

I parametri nell'intestazione WWW-Authenticate sono:

  • authorization: indirizzo del servizio di autorizzazione OAuth2 che potrebbe essere usato per ottenere un token di accesso per la richiesta.

  • resource: nome della risorsa (https://vault.azure.net) da usare nella richiesta di autorizzazione.

Altre risorse