Freigeben über


Häufige Azure Key Vault-Fehler im Azure Application Gateway

Zusammenfassung

Mit dem Anwendungsgateway können Sie TLS-Zertifikate sicher im Azure Key Vault speichern. Wenn Sie eine Schlüsseltresorressource verwenden, ist es wichtig, dass das Gateway immer Zugriff auf den verknüpften Schlüsseltresor hat. Wenn Ihr Anwendungsgateway das Zertifikat nicht abrufen kann, werden die zugehörigen HTTPS-Listener deaktiviert. Weitere Informationen finden Sie unter Grundlegendes zu deaktivierten Listenern.

Dieser Artikel hilft Ihnen, die Details der Fehlercodes und die Schritte zum Beheben von Fehlkonfigurationen von Schlüsselbunden zu verstehen.

Tipp

Verwenden Sie einen geheimen Bezeichner, der keine Version angibt. Mit diesem Bezeichner dreht Azure Application Gateway automatisch das Zertifikat, wenn eine neuere Version in Azure Key Vault verfügbar ist. Ein Beispiel für einen geheimen URI ohne Version ist: https://myvault.vault.azure.net/secrets/mysecret/.

Azure Advisor Fehlercodes

In den folgenden Abschnitten werden die verschiedenen Fehler beschrieben, die auftreten können. Um zu überprüfen, ob Ihr Gateway über eines dieser Probleme verfügt, besuchen Sie Azure Advisor für Ihr Konto. Verwenden Sie diesen Artikel zur Problembehandlung, um das Problem zu beheben. Konfigurieren Sie Azure Advisor-Benachrichtigungen, um auf dem Laufenden zu bleiben, wenn ein Schlüsseltresorproblem für Ihr Gateway erkannt wird.

Hinweis

Azure Application Gateway generiert alle vier Stunden Protokolle für die Diagnose des Key Vault. Wenn die Diagnose nach der Behebung der Konfiguration weiterhin den Fehler zeigt, müssen Sie möglicherweise warten, bis die Protokolle aktualisiert werden.

Fehlercode: Benutzerzugewiesene Identität hat keine Abrufberechtigung für den Schlüsseltresor.

Beschreibung: Die zugeordnete vom Benutzer zugewiesene verwaltete Identität verfügt nicht über die erforderliche Berechtigung.

Auflösung: Konfigurieren Sie die Zugriffsrichtlinien Ihres Key Vault, um der vom Benutzer zugewiesenen verwalteten Identität Berechtigungen für vertrauliche Daten zu erteilen. Sie können dies auf eine der folgenden Arten tun:

Tresorzugriffsrichtlinie

  1. Wechseln Sie zum verknüpften Key Vault im Azure-Portal.
  2. Öffnen Sie Access-Richtlinien.
  3. Wählen Sie für den Berechtigungsmodell die Tresorzugriffsrichtlinie aus.
  4. Wählen Sie unter Geheimverwaltungsoperationen die Berechtigung Abrufen aus.
  5. Wählen Sie Speichern aus.

 Screenshot, der zeigt, wie der Get-Berechtigungsfehler behoben wird.

Weitere Informationen finden Sie unter Zuweisen einer Schlüsselverwaltungszugriffsrichtlinie mit dem Azure-Portal.

Azure rollenbasierte Zugriffssteuerung

  1. Wechseln Sie zum verknüpften Key Vault im Azure-Portal.
  2. Öffnen Sie Access-Richtlinien.
  3. Wählen Sie für PermissionsmodellAzure rollenbasierte Zugriffssteuerung aus.
  4. Wechseln Sie zu Access Control (IAM), um Berechtigungen zu konfigurieren.
  5. Fügen Sie Rollenzuweisungen für Ihre verwaltete Identität hinzu, indem Sie die folgenden Werte auswählen:
    a) Role: Key Vault Geheime Benutzer
    b. Zugriff zuweisen für: Verwaltete Identität
    c. Mitglieder: Wählen Sie die vom Benutzer zugewiesene verwaltete Identität aus, die Sie Ihrem Anwendungsgateway zugeordnet haben.
  6. Wählen Sie "Überprüfen+ Zuweisen" aus.

Weitere Informationen finden Sie unter Azure rollenbasierte Zugriffssteuerung in Key Vault.

Hinweis

Die Portalunterstützung zum Hinzufügen eines neuen schlüsseltresorbasierten Zertifikats ist derzeit nicht verfügbar, wenn Sie die rollenbasierte Azure-Zugriffssteuerung verwenden. Sie können dies mithilfe einer ARM-Vorlage, cli oder PowerShell erreichen. Weitere Informationen finden Sie im Berechtigungsmodell für die rollenbasierte Zugriffssteuerung von Key Vault Azure.

Fehlercode: SecretDisabled

Description: Das zugeordnete Zertifikat wurde in Key Vault deaktiviert.

Auflösung: Aktivieren Sie die derzeit für das Anwendungsgateway verwendete Zertifikatversion erneut.

  1. Wechseln Sie zum verknüpften Key Vault im Azure-Portal.
  2. Öffnen Sie den Bereich "Zertifikate ".
  3. Wählen Sie den erforderlichen Zertifikatnamen und dann die deaktivierte Version aus.
  4. Verwenden Sie auf der Verwaltungsseite die Umschaltfläche, um diese Zertifikatversion zu aktivieren.

Screenshot, der zeigt, wie Sie einen geheimen Schlüssel erneut aktivieren.

Fehlercode: SecretDeletedFromKeyVault

Description: Das zugeordnete Zertifikat wurde aus Key Vault gelöscht.

Auflösung: So stellen Sie ein gelöschtes Zertifikat wieder her:

  1. Wechseln Sie zum verknüpften Key Vault im Azure-Portal.
  2. Öffnen Sie den Bereich "Zertifikate ".
  3. Verwenden Sie die Registerkarte "Verwaltete gelöschte Zertifikate ", um ein gelöschtes Zertifikat wiederherzustellen.

Wenn ein Zertifikatobjekt jedoch endgültig gelöscht wird, müssen Sie ein neues Zertifikat erstellen und das Anwendungsgateway mit den neuen Zertifikatdetails aktualisieren. Wenn Sie die Konfiguration über das Azure CLI oder Azure PowerShell durchführen, verwenden Sie einen geheimen Bezeichner-URI ohne Version. Diese Option ermöglicht Instanzen das Abrufen einer erneuerten Version des Zertifikats, sofern vorhanden.

Screenshot, der zeigt, wie Sie ein gelöschtes Zertifikat im Key Vault wiederherstellen.

Fehlercode: UserAssignedManagedIdentityNotFound

Beschreibung: Die zugeordnete vom Benutzer zugewiesene verwaltete Identität wurde gelöscht.

Auflösung: Erstellen Sie eine neue verwaltete Identität und verwenden Sie diese mit dem Schlüsseltresor.

  1. Erstellen Sie eine verwaltete Identität mit demselben Namen wie zuvor und unter derselben Ressourcengruppe erneut. (TIPP: Informationen zum Benennen finden Sie in den Ressourcenaktivitätsprotokollen).
  2. Wechseln Sie zu der gewünschten Schlüsseltresorressource und richten Sie die Zugriffsrichtlinien so ein, dass Sie dieser neuen verwalteten Identität die erforderliche Berechtigung zuweisen. Sie können die gleichen Schritte ausführen wie im Fehlercode erwähnt: UserAssignedIdentityDoesNotHaveGetPermissionOnKeyVault.

Fehlercode: KeyVaultHasRestrictedAccess

Description: Es gibt eine eingeschränkte Netzwerkeinstellung für Key Vault.

Auflösung: Dieser Fehler tritt auf, wenn Sie die Key Vault-Firewall für eingeschränkten Zugriff aktivieren. Sie können das Anwendungsgateway weiterhin in einem eingeschränkten Netzwerk von Key Vault konfigurieren, indem Sie die folgenden Schritte ausführen:

  1. Öffnen Sie in Key Vault den Bereich Networking.
  2. Wählen Sie die Registerkarte "Firewalls" und "Virtuelle Netzwerke " und dann "Privater Endpunkt" und ausgewählte Netzwerke aus.
  3. Fügen Sie dann mithilfe von virtuellen Netzwerken das virtuelle Netzwerk und subnetz Ihres Anwendungsgateways hinzu. Konfigurieren Sie während des Vorgangs auch den Dienstendpunkt "Microsoft.KeyVault", indem Sie das Kontrollkästchen aktivieren.
  4. Wählen Sie schließlich Yes aus, damit vertrauenswürdige Dienste die Firewall Key Vault umgehen können.

Screenshot, der zeigt, wie der eingeschränkte Netzwerkfehler umgangen wird.

Fehlercode: KeyVaultSoftDeleted

Beschreibung: Der zugeordnete Key Vault befindet sich im Zustand "Soft Delete".

Resolution: Suchen Sie im Azure-Portal nach key Vault. Wählen Sie unter DiensteSchlüsselbund aus.

Screenshot, der zeigt, wie Sie nach dem Key Vault-Dienst suchen.

Wählen Sie verwaltete gelöschte Tresore aus. Von hier aus finden Sie die gelöschte Key Vault Ressource und stellen sie wieder her. Screenshot von, der zeigt, wie Sie einen gelöschten Key Vault wiederherstellen.

Fehlercode: CustomerKeyVaultSubscriptionDisabled

Description: Das Abonnement für Key Vault ist deaktiviert.

Auflösung: Verschiedene Gründe können dazu führen, dass Azure Ihr Abonnement deaktiviert. Informationen zum Ausführen der erforderlichen Maßnahmen zum Beheben dieses Problems finden Sie unter Reaktivieren eines deaktivierten Azure-Abonnements.

Fehlercodes für Anwendungsgateway

Fehlercode: ApplicationGatewayCertificateDataOrKeyVaultSecretIdMustBeSpecified / ApplicationGatewaySslCertificateDataMustBeSpecified

Beschreibung: Dieser Fehler tritt auf, wenn Sie versuchen, ein Listenerzertifikat zu aktualisieren. Wenn dieser Fehler auftritt, wird die Änderung zum Aktualisieren des Zertifikats verworfen, und der Listener verarbeitet weiterhin Datenverkehr mit der zuvor definierten Konfiguration.

Auflösung: Um dieses Problem zu beheben, versuchen Sie erneut, das Zertifikat hochzuladen. Verwenden Sie beispielsweise die folgenden PowerShell-Befehle, um Zertifikate zu aktualisieren, die in das Anwendungsgateway hochgeladen wurden oder über Azure Key Vault referenziert werden.

Aktualisieren Sie das Zertifikat, das direkt in das Anwendungsgateway hochgeladen wurde:

$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 

Aktualisieren des Zertifikats, auf das von Azure Key Vault verwiesen wird:

$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 

Nächste Schritte

Diese Artikel zur Problembehandlung können hilfreich sein, wenn Sie weiterhin das Anwendungsgateway verwenden: