Informazioni sulle credenziali API e su Gestione credenziali

SI APPLICA A: Tutti i livelli di Gestione API

Per gestire l'accesso alle API back-end, l'istanza di Gestione API include Gestione credenziali. Usare Gestione credenziali per gestire, archiviare e controllare l'accesso alle credenziali API dall'istanza di Gestione API.

Nota

  • Attualmente, è possibile usare Gestione credenziali per configurare e gestire le connessioni (in precedenza denominate autorizzazioni) per le API OAuth 2.0 back-end.
  • Non vengono introdotte modifiche di rilievo con Gestione credenziali. I provider di credenziali OAuth 2.0 e le connessioni usano le API di autorizzazione di Gestione API esistenti e il provider di risorse.

Nota

Attualmente, questa funzionalità non è disponibile nelle aree di lavoro.

Connessioni gestite per le API OAuth 2.0

Con Gestione credenziali è possibile semplificare notevolmente il processo di autenticazione e autorizzazione di utenti, gruppi ed entità servizio in uno o più servizi back-end o SaaS che usano OAuth 2.0. Con Gestione credenziali di Gestione API, configurare facilmente OAuth 2.0, fornire il consenso, acquisire token, token di cache in un archivio di credenziali e token di aggiornamento senza scrivere una singola riga di codice. Usare i criteri di accesso per delegare l'autenticazione all'istanza di Gestione API, alle entità servizio, agli utenti o ai gruppi. Per informazioni generali su OAuth 2.0, vedere Microsoft Identity Platform e flusso del codice di autorizzazione OAuth 2.0.

Questa funzionalità consente l'esposizione delle API con o senza una chiave di sottoscrizione, l'uso delle autorizzazioni OAuth 2.0 per i servizi back-end e la riduzione dei costi di sviluppo nell'aumento, nell'implementazione e nella gestione delle funzionalità di sicurezza con le integrazioni dei servizi.

Diagramma della gestione delle credenziali di Gestione API e dei provider di identità SaaS supportati.

Caso d'uso di esempio

Usando le connessioni OAuth gestite in Gestione API, i clienti possono connettersi facilmente a provider SaaS o servizi back-end che usano OAuth 2.0. Di seguito sono riportati alcuni esempi.

  • Connettersi facilmente a un back-end SaaS collegando il token di autorizzazione archiviato e le richieste di proxying

  • Richieste proxy a un'app Web del servizio app di Azure o back-end di Funzioni di Azure collegando il token di autorizzazione, che in un secondo momento può inviare richieste a un back-end SaaS applicando la logica di trasformazione

  • Richieste proxy ai back-end di federazione GraphQL collegando più token di accesso per eseguire facilmente la federazione

  • Esporre un endpoint del token di recupero, acquisire un token memorizzato nella cache e chiamare un back-end SaaS per conto dell'utente da qualsiasi ambiente di calcolo, ad esempio un'app console o un daemon Kubernetes. Combinare l'SDK SaaS preferito in un linguaggio supportato.

  • Scenari automatici di Funzioni di Azure durante la connessione a più back-end SaaS.

  • Durable Functions si avvicina alle App per la logica con connettività SaaS.

  • Con le connessioni OAuth 2.0, ogni API in Gestione API può fungere da connettore personalizzato di App per la logica.

Come funziona Gestione credenziali?

Le credenziali del token in Gestione credenziali sono costituite da due parti: gestione e runtime.

  • La parte di gestione in Gestione credenziali si occupa dell’impostazione e della configurazione di un provider di credenziali per i token OAuth 2.0, dell'abilitazione del flusso di consenso per il provider e della configurazione di una o più connessioni al provider di credenziali per l'accesso alle credenziali. Per informazioni dettagliate, vedere Gestione delle connessioni.

  • La parte runtime usa il i criteri get-authorization-context per recuperare e archiviare i token di accesso e aggiornamento della connessione. Quando viene eseguita una chiamata a Gestione API e vengono eseguiti i criteri get-authorization-context, viene prima convalidato se il token di autorizzazione esistente è valido. Se il token di autorizzazione è scaduto, Gestione API usa un flusso OAuth 2.0 per aggiornare i token archiviati dal provider di identità. Il token di accesso viene quindi usato per autorizzare l'accesso al servizio back-end. Per informazioni dettagliate, vedere Runtime delle connessioni.

Quando usare Gestione credenziali?

Di seguito sono riportati tre scenari per l'uso di Gestione credenziali.

Scenario di configurazione

Dopo aver configurato il provider di credenziali e una connessione, Gestione API può testare la connessione. Gestione API configura un'API OAuth back-end di test per l'uso dei criteri get-authorization-context tramite l'identità gestita dell'istanza. Gestione API può quindi testare la connessione chiamando l'API di test.

Diagramma dello scenario di configurazione iniziale per gestione credenziali.

Scenario automatico

Per impostazione predefinita, quando viene creata una connessione, i criteri di accesso e la connessione vengono preconfigurati per l'identità gestita dell'istanza di Gestione API. Per usare tale connessione, utenti diversi possono accedere a un'applicazione client, ad esempio un'app Web statica, che chiama quindi un'API back-end esposta tramite Gestione API. Per effettuare questa chiamata, le connessioni vengono applicate usando i criteri get-authorization-context. Poiché la chiamata API usa una connessione preconfigurata non correlata al contesto utente, gli stessi dati vengono restituiti a tutti gli utenti.

Diagramma dello scenario delle identità gestite per la gestione delle credenziali.

Scenario atteso (user-delegated)

Per abilitare un'esperienza di autenticazione semplificata per gli utenti di applicazioni client, ad esempio app Web statiche, che chiamano API SaaS back-end che richiedono un contesto utente, è possibile abilitare l'accesso a una connessione per conto di un utente o di un'identità di gruppo Microsoft Entra. In questo caso, un utente configurato deve accedere e fornire il consenso una sola volta e l'istanza di Gestione API creerà e gestirà la connessione successivamente. Quando Gestione API ottiene una chiamata in ingresso da inoltrare a un servizio esterno, associa il token di accesso dalla connessione alla richiesta. Ciò è ideale per quando le richieste e le risposte API sono orientate verso un individuo (ad esempio, recuperando informazioni sul profilo specifiche dell'utente).

Diagramma dello scenario delegato dall'utente per gestione credenziali.

Come si configura Gestione credenziali?

Requisiti

  • L'identità assegnata dal sistema gestito deve essere abilitata per l'istanza di Gestione API.

  • L'istanza di Gestione API deve avere connettività in uscita a Internet sulla porta 443 (HTTPS).

Disponibilità

  • Tutti i livelli di servizio di Gestione API

  • Non supportato nel gateway self-hosted

  • Non supportato nei cloud sovrani o nelle aree seguenti: australiacentral, australiacentral2, indiacentral

Esempi dettagliati

Considerazioni sulla sicurezza

Il token di accesso e altri segreti (ad esempio, i segreti client) vengono crittografati con una crittografia envelope e archiviati in una risorsa di archiviazione interna multi-tenant. I dati vengono crittografati con AES-128 usando una chiave univoca per dati. Queste chiavi vengono crittografate in modo asimmetrico con un certificato master archiviato in Azure Key Vault e ruotate ogni mese.

Limiti

Conto risorse Limite
Numero massimo di provider di credenziali per istanza del servizio 1.000
Numero massimo di connessioni per provider di credenziali 10,000
Numero massimo di criteri di accesso per connessione 100
Numero massimo di richieste di autorizzazione al minuto per connessione 250

Domande frequenti

Quando vengono aggiornati i token di accesso?

Per una connessione del codice di autorizzazione di tipo, i token di accesso vengono aggiornati come indicato di seguito: quando il criterio get-authorization-context viene eseguito in fase di esecuzione, Gestione API verifica se il token di accesso archiviato è valido. Se il token è scaduto o è quasi scaduto, Gestione API usa il token di aggiornamento per recuperare un nuovo token di accesso e un nuovo token di aggiornamento dal provider di identità configurato. Se il token di aggiornamento è scaduto, viene generato un errore e la connessione deve essere nuovamente autorizzata prima che funzioni.

Cosa accade se il segreto client scade nel provider di identità?

In Fase di esecuzione Gestione API non riesce a recuperare nuovi token e si verifica un errore.

  • Se la connessione è di tipo codice di autorizzazione, il segreto client deve essere aggiornato a livello di provider di credenziali.

  • Se la connessione è di tipo credenziali client, il segreto client deve essere aggiornato a livello di connessione.

Questa funzionalità è supportata usando Gestione API in esecuzione all'interno di una rete virtuale?

Sì, purché la connettività in uscita sulla porta 443 sia abilitata per il tag del servizio AzureConnectors. Per altre informazioni, vedere Informazioni di riferimento sulla configurazione della rete virtuale.

Cosa accade quando viene eliminato un provider di credenziali?

Vengono eliminate anche tutte le connessioni e i criteri di accesso sottostanti.

I token di accesso vengono memorizzati nella cache da Gestione API?

Nei livelli di servizio classico e v2, il token di accesso viene memorizzato nella cache dall'istanza di Gestione API fino a 3 minuti prima della scadenza del token. Se il token di accesso è a meno di 3 minuti dalla scadenza, il tempo memorizzato nella cache sarà fino alla scadenza del token di accesso.

I token di accesso non vengono memorizzati nella cache nel livello A consumo.