Condividi tramite


Errori comuni di Key Vault in Azure Application Gateway

Riassunto

Il Gateway Applicazione consente di archiviare in modo sicuro i certificati TLS in Azure Key Vault. Quando si usa una risorsa di Key Vault, è importante che il gateway abbia sempre accesso al Key Vault collegato. Se il gateway applicativo non riesce a recuperare il certificato, disabilita i listener HTTPS associati. Per altre informazioni, vedere Informazioni sui listener disattivati.

Questo articolo ti aiuta a comprendere i dettagli dei codici di errore e i passaggi per risolvere le errate configurazioni dell'archivio delle chiavi.

Suggerimento

Usare un ID segreto che non specifica una versione. Utilizzando questo identificatore, Application Gateway di Azure aggiorna automaticamente il certificato se una versione più recente è disponibile in Azure Key Vault. Un esempio di URI segreto senza una versione è: https://myvault.vault.azure.net/secrets/mysecret/.

codici di errore Azure Advisor

Le sezioni seguenti descrivono i vari errori che potrebbero verificarsi. Per verificare se il gateway presenta uno di questi problemi, visitare Azure Advisor per l'account. Usare questo articolo sulla risoluzione dei problemi per risolvere il problema. Configurare gli avvisi di Azure Advisor per essere informati quando viene rilevato un problema nel Key Vault per il gateway.

Annotazioni

Azure Application Gateway genera log per la diagnostica di Key Vault ogni quattro ore. Se la diagnostica continua a visualizzare l'errore dopo aver corretto la configurazione, potrebbe essere necessario attendere l'aggiornamento dei log.

Codice errore: UserAssignedIdentityDoesNotHaveGetPermissionOnKeyVault

Descrizione: L'identità gestita assegnata dall'utente associata non dispone dell'autorizzazione necessaria.

Risoluzione: Configurare i criteri di accesso dell'insieme di credenziali delle chiavi per concedere all'identità gestita assegnata dall'utente l'autorizzazione per i segreti. È possibile eseguire questa operazione in uno dei modi seguenti:

Criterio di accesso all'insieme di credenziali

  1. Vai al Key Vault collegato nel portale di Azure.
  2. Aprire Criteri di accesso.
  3. Per Modello di autorizzazione, selezionare Policy di accesso del Vault.
  4. In Operazioni di gestione dei segreti selezionare l'autorizzazione Recupera .
  5. Seleziona Salva.

 Screenshot che mostra come risolvere l'errore di ottenere il permesso.

Per altre informazioni, vedere Assegnare un criterio di accesso Key Vault usando il portale di Azure.

Azure controllo degli accessi in base al ruolo

  1. Vai al Key Vault collegato nel portale di Azure.
  2. Aprire Criteri di accesso.
  3. Per Modello di autorizzazione, selezionare Controllo degli accessi basato sui ruoli di Azure.
  4. Passare a Controllo di accesso (IAM) per configurare le autorizzazioni.
  5. Aggiungere l'assegnazione di ruolo per l'identità gestita scegliendo i valori seguenti:
    a. Role: Utente dei segreti di Key Vault
    b. Assegnare l'accesso a: Identità gestita
    c. Membri: selezionare l'identità gestita assegnata dall'utente che avete associato al gateway applicativo.
  6. Seleziona Rivedi + assegna.

Per ulteriori informazioni, vedere Controllo degli accessi basato sui ruoli di Azure in Key Vault.

Annotazioni

Il supporto del portale per l'aggiunta di un nuovo certificato basato su Key Vault non è attualmente disponibile quando si usa il controllo degli accessi in base al ruolo di Azure. Puoi farlo usando un modello ARM, l'interfaccia della riga di comando o PowerShell. Per altre informazioni, vedere Modello di autorizzazione per il controllo degli accessi in base al ruolo di Azure per Key Vault.

Codice errore: SecretDisabled

Description: Il certificato associato è stato disabilitato in Key Vault.

Risoluzione: Riattivare la versione del certificato attualmente in uso per il Gateway applicativo.

  1. Vai al Key Vault collegato nel portale di Azure.
  2. Aprire il riquadro Certificati .
  3. Selezionare il nome del certificato richiesto e quindi selezionare la versione disabilitata.
  4. Nella pagina di gestione, utilizzare l'opzione di attivazione per abilitare la versione del certificato.

Screenshot che mostra come riattivare un segreto.

Codice errore: SecretDeletedFromKeyVault

Description: Il certificato associato è stato eliminato da Key Vault.

Risoluzione: Per recuperare un certificato eliminato:

  1. Vai al Key Vault collegato nel portale di Azure.
  2. Aprire il riquadro Certificati .
  3. Usare la scheda Certificati eliminati gestiti per recuperare un certificato eliminato.

D'altra parte, se un oggetto certificato viene eliminato definitivamente, sarà necessario creare un nuovo certificato e aggiornare il gateway applicazione con i nuovi dettagli del certificato. Quando si configura tramite Azure CLI o PowerShell, utilizzare un URI identificatore segreto senza versione. Questa scelta consente alle istanze di recuperare una versione rinnovata del certificato, se esistente.

Screenshot che mostra come ripristinare un certificato eliminato in Key Vault.

Codice errore: UserAssignedManagedIdentityNotFound

Descrizione: L'identità gestita assegnata dall'utente associata è stata eliminata.

Risoluzione: Creare una nuova identità gestita e usarla con l'insieme di credenziali.

  1. Ricreare un'identità gestita con lo stesso nome usato in precedenza e nello stesso gruppo di risorse. (SUGGERIMENTO: fare riferimento ai log delle attività delle risorse per dettagli sulla denominazione).
  2. Passare alla risorsa dell'insieme di credenziali delle chiavi desiderata e impostarne i criteri di accesso per concedere a questa nuova identità gestita l'autorizzazione necessaria. È possibile seguire gli stessi passaggi menzionati in Codice errore: UserAssignedIdentityDoesNotHaveGetPermissionOnKeyVault.

Codice errore: KeyVaultHasRestrictedAccess

Description: È disponibile un'impostazione di rete con restrizioni per Key Vault.

Risoluzione: Questo errore si verifica quando si abilita il firewall di Key Vault per l'accesso limitato. È comunque possibile configurare il gateway applicazione in una rete con restrizioni di Key Vault, seguendo questa procedura:

  1. In Key Vault aprire il riquadro Networking.
  2. Selezionare la scheda Firewall e reti virtuali e selezionare Endpoint privato e reti selezionate.
  3. Quindi, utilizzando le reti virtuali, aggiungi la rete virtuale e la subnet del gateway applicativo. Durante il processo, configurare anche l'endpoint di servizio "Microsoft.KeyVault" selezionando la relativa casella di controllo.
  4. Infine, selezionare Yes per consentire ai servizi attendibili di ignorare il firewall di Key Vault.

Screenshot che mostra come aggirare l'errore di rete limitata.

Codice errore: KeyVaultSoftDeleted

Descrizione: Il Key Vault associato è in stato di eliminazione soft.

Resolution: Nel portale di Azure cercare key vault. In Servizi selezionare Key Vaults.

Screenshot che mostra come cercare il servizio Key Vault.

Selezionare Insiemi di credenziali eliminati gestiti. Da qui è possibile trovare la risorsa Key Vault eliminata e recuperarla. Screenshot che mostra come ripristinare un Key Vault eliminato.

Codice errore: CustomerKeyVaultSubscriptionDisabled

Description: La sottoscrizione per Key Vault è disabilitata.

Risoluzione: Vari motivi possono causare la disabilitazione della sottoscrizione da parte di Azure. Per eseguire l'azione necessaria per risolvere questo problema, vedere Riattivare una sottoscrizione di Azure disabilitata.

Codici di errore del gateway di applicazione

Codice errore: ApplicationGatewayCertificateDataOrKeyVaultSecretIdMustBeSpecified/ApplicationGatewaySslCertificateDataMustBeSpecified

Descrizione: Questo errore si verifica quando si tenta di aggiornare un certificato del listener. Quando si verifica questo errore, la modifica per aggiornare il certificato viene rimossa e il listener continua a gestire il traffico con la configurazione definita in precedenza.

Risoluzione: Per risolvere questo problema, provare a caricare di nuovo il certificato. Ad esempio, usare i comandi di PowerShell seguenti per aggiornare i certificati caricati nel gateway applicazione o a cui viene fatto riferimento tramite Azure Key Vault.

Aggiorna il certificato caricato direttamente nel gateway di applicazione:

$appgw = Get-AzApplicationGateway -ResourceGroupName "<ResourceGroup>" -Name "<AppGatewayName>"

$password = ConvertTo-SecureString -String "<password>" -Force -AsPlainText

Set-AzApplicationGatewaySSLCertificate -Name "<oldcertname>" -ApplicationGateway $appgw -CertificateFile "<newcertPath>" -Password $password

Set-AzApplicationGateway -ApplicationGateway $appgw 

Aggiornare il certificato a cui si fa riferimento da Azure Key Vault:

$appgw = Get-AzApplicationGateway -ResourceGroupName "<ResourceGroup>" -Name "<AppGatewayName>"

$secret = Get-AzKeyVaultSecret -VaultName "<KeyVaultName>" -Name "<CertificateName>" 
$secretId = $secret.Id.Replace($secret.Version, "") 
$cert = Set-AzApplicationGatewaySslCertificate -ApplicationGateway $AppGW -Name "<CertificateName>" -KeyVaultSecretId $secretId 

Set-AzApplicationGateway -ApplicationGateway $appgw 

Passaggi successivi

Questi articoli sulla risoluzione dei problemi potrebbero essere utili man mano che continui a usare Application Gateway.