Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
SI APPLICA A: Tutti i livelli di Gestione API
Gestione API consente di proteggere l'accesso al servizio back-end di un'API usando i certificati client e l'autenticazione TLS reciproca. Questo articolo illustra come gestire i certificati in Gestione API usando il portale di Azure. Viene inoltre spiegato come configurare un'API per usare un certificato per accedere a un servizio back-end.
È anche possibile gestire i certificati di Gestione API usando l'API REST di Gestione API.
Opzioni di certificati
Gestione API offre due opzioni per la gestione dei certificati usati per proteggere l'accesso ai servizi back-end:
- Fare riferimento a un certificato gestito in Azure Key Vault.
- Aggiungere un file di certificato direttamente in Gestione API.
Si consiglia di utilizzare i certificati di Azure Key Vault perché in tal modo si migliora la sicurezza della gestione delle API.
- I certificati archiviati negli archivi delle chiavi possono essere riutilizzati nei servizi.
- I criteri di accesso granulari possono essere applicati ai certificati archiviati negli insiemi di credenziali delle chiavi.
- I certificati aggiornati nell'insieme di credenziali delle chiavi vengono ruotati automaticamente in Gestione API. Dopo un aggiornamento nel Key Vault, un certificato in Gestione API viene aggiornato entro quattro ore. È anche possibile aggiornare manualmente il certificato usando il portale di Azure o l'API REST di gestione.
Prerequisiti
Nota
È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.
Se non è ancora stata creata un'istanza di Gestione API, vedere Creare un'istanza del servizio Gestione API.
Configura l'autenticazione del certificato client per il servizio backend. Per informazioni sulla configurazione dell'autenticazione del certificato nel servizio app di Azure, vedere Configurare l'autenticazione reciproca TLS nel servizio app.
Assicurarsi di avere accesso al certificato e alla password per la gestione in un insieme di credenziali delle chiavi di Azure o a un certificato da caricare nel servizio Gestione API. Il certificato deve essere in formato PFX. Sono consentiti i certificati autofirmati.
Se si usa un certificato autofirmato:
Installare certificati CA intermedi e radice attendibili nell'istanza di Gestione API.
Nota
I certificati CA per la validazione dei certificati non sono supportati nel livello di consumo.
Disabilitare la convalida della catena di certificati. Vedere Disabilitare la convalida della catena di certificati per i certificati autofirmato più avanti in questo articolo.
Prerequisiti per l'integrazione dell'insieme di credenziali delle chiavi
Nota
Attualmente, questa funzionalità non è disponibile nelle aree di lavoro.
Se non si ha già un insieme di credenziali delle chiavi, crearne uno. Per informazioni sulla creazione di un insieme di credenziali delle chiavi, vedere Avvio rapido: Creare un insieme di credenziali delle chiavi usando il portale di Azure.
Abilitare un'identità gestita assegnata dal sistema o assegnata dall'utente in Gestione API.
Configurare l'accesso all'insieme di credenziali delle chiavi
- Nel portale, vai al tuo gestione delle chiavi.
- Nel menu a sinistra selezionare Configurazione di accesso. Si noti il modello di autorizzazione configurato.
- A seconda del modello di autorizzazione, configurare un criterio di accesso dell'insieme di credenziali delle chiavi o un accesso al controllo degli accessi in base al ruolo di Azure per un'identità gestita di Gestione API.
Per aggiungere una policy di accesso del Key Vault:
- Selezionare Criteri di accesso nel menu a sinistra.
- Nella pagina Criteri di accesso selezionare + Crea.
- Nella scheda Autorizzazioni , in Autorizzazioni segrete selezionare Recupera ed Elenco e quindi selezionare Avanti.
- Nella scheda Entità selezionare Entità, cercare il nome della risorsa dell'identità gestita e quindi selezionare Avanti. Se si usa un'identità assegnata dal sistema, l'entità è il nome dell'istanza di Gestione API.
- Selezionare di nuovo Avanti. Nella scheda Rivedi e crea selezionare Crea.
Per creare un certificato nell'insieme di credenziali delle chiavi o importare un certificato nell'insieme di credenziali delle chiavi, vedere Avvio rapido: Impostare e recuperare un certificato da Azure Key Vault usando il portale di Azure.
Requisiti per il firewall di Key Vault
Se il firewall di Key Vault è abilitato nella tua Key Vault, devi soddisfare questi requisiti:
Per accedere al Key Vault, è necessario usare l'identità gestita assegnata dal sistema dell'istanza di API Management.
Nel firewall di Key Vault, abilitare l'opzione Consenti ai servizi Microsoft attendibili di ignorare questo firewall.
Assicurarsi che l'indirizzo IP del client locale sia autorizzato ad accedere temporaneamente all'insieme di credenziali delle chiavi mentre si seleziona un certificato o un segreto da aggiungere a Gestione API di Azure. Per altre informazioni, vedere Configurare le impostazioni di rete di Azure Key Vault.
Dopo aver completato la configurazione, è possibile bloccare l'indirizzo del cliente nel firewall del Key Vault.
Requisiti della rete virtuale
Se l'istanza di Gestione API viene distribuita in una rete virtuale, configurare anche le impostazioni di rete seguenti:
- Abilitare un endpoint di servizio per Key Vault nella subnet di Gestione API.
- Configurare una regola del gruppo di sicurezza di rete (NSG) per consentire il traffico in uscita ai tag del servizio AzureKeyVault e AzureActiveDirectory.
Per informazioni dettagliate, vedere Configurazione di rete durante la configurazione di Gestione API in una rete virtuale.
Aggiungere un certificato dell'insieme di credenziali delle chiavi
Vedere Prerequisiti per l'integrazione dell'insieme di credenziali delle chiavi.
Importante
Per aggiungere un certificato del Key Vault all'istanza di Gestione API, è necessario disporre delle autorizzazioni per elencare i segreti dal Key Vault.
Attenzione
Quando si usa un certificato di Key Vault in Gestione API, prestare attenzione a non eliminare il certificato, il Key Vault o l'identità gestita utilizzata per accedere al Key Vault.
Per aggiungere un certificato dell'insieme di credenziali delle chiavi a Gestione API:
Nel portale di Azure passare all'istanza di Gestione API.
In Sicurezza, selezionare Certificati.
Selezionare Certificati>+ Aggiungi.
In ID immettere un nome.
In Certificato, selezionare insieme di credenziali delle chiavi.
Immettere l'identificatore di un certificato dell'insieme di credenziali delle chiavi oppure scegliere Seleziona per selezionare un certificato da un insieme di credenziali delle chiavi.
Importante
Quando si inserisce manualmente un identificatore del certificato del vault delle chiavi, assicurati che non contenga informazioni sulla versione. In caso contrario, il certificato non verrà ruotato automaticamente in Gestione API dopo un aggiornamento nell'insieme di credenziali delle chiavi.
In Identità client selezionare un'identità assegnata dal sistema o un'identità gestita assegnata dall'utente esistente. Per altre informazioni, vedere Usare le identità gestite in Gestione API di Azure.
Nota
L'identità deve avere le autorizzazioni per accedere e visualizzare i certificati dal Key Vault. Se non hai già configurato l'accesso al Key Vault, Gestione API ti chiederà di consentire la configurazione automatica dell'identità con i permessi necessari.
Selezionare Aggiungi.
Seleziona Salva.
Caricamento di un certificato
Per caricare un certificato client in Gestione API:
Nel portale di Azure passare all'istanza di Gestione API.
In Sicurezza, selezionare Certificati.
Selezionare Certificati>+ Aggiungi.
In ID immettere un nome.
In Certificato, selezionare Personalizzato.
Sfogliare per selezionare file con estensione .pfx del certificato e immettere la password.
Selezionare Aggiungi.
Seleziona Salva.
Dopo il caricamento del certificato, viene visualizzato nella finestra Certificati. Se si dispone di molti certificati, prendere nota dell'impronta digitale del certificato appena caricato. Sarà necessario configurare un'API per usare il certificato client per l'autenticazione del gateway.
Configurare un'API per l'uso di un certificato client per l'autenticazione gateway
Nel portale di Azure passare all'istanza di Gestione API.
In API, selezionare API.
Selezionare un'API dall'elenco.
Nella scheda Progettazione selezionare l'icona a forma di matita nella sezione Back-end .
In Credenziali gateway, seleziona Certificato client e poi seleziona il tuo certificato nell'elenco Certificato client.
Seleziona Salva.
Attenzione
Questa modifica è immediata. Le chiamate alle operazioni dell'API useranno il certificato per l'autenticazione nel server back-end.
Suggerimento
Quando viene specificato un certificato per l'autenticazione del gateway per il servizio back-end di un'API, diventa parte dei criteri per tale API e può essere visualizzato nell'editor dei criteri.
Disabilitare la convalida della catena di certificati per i certificati autofirmati
Se si usano certificati autofirmato, è necessario disabilitare la convalida della catena di certificati per consentire a Gestione API di comunicare con il sistema back-end. In caso contrario, si otterrà un codice di errore 500. Per disabilitare questa convalida, è possibile usare i New-AzApiManagementBackend
cmdlet di PowerShell (per un nuovo back-end) o Set-AzApiManagementBackend
(per un back-end esistente) e impostare il -SkipCertificateChainValidation
parametro su True
:
$context = New-AzApiManagementContext -ResourceGroupName 'ContosoResourceGroup' -ServiceName 'ContosoAPIMService'
New-AzApiManagementBackend -Context $context -Url 'https://contoso.com/myapi' -Protocol http -SkipCertificateChainValidation $true
È anche possibile disabilitare la convalida della catena di certificati usando l'API REST Back-end.
Eliminare un certificato client
Per eliminare un certificato, selezionare Elimina nel menu con i puntini di sospensione (...):
Importante
Se viene fatto riferimento al certificato da qualsiasi criterio, viene visualizzata una schermata di avviso. Per eliminare il certificato, è prima necessario rimuoverlo da tutti i criteri configurati per usarlo.