Gyakori kulcstartóhibák az Azure-alkalmazás Gatewayben

Az Application Gateway lehetővé teszi az ügyfelek számára a TLS-tanúsítványok biztonságos tárolását az Azure Key Vaultban. Kulcstartó-erőforrás használatakor fontos, hogy az átjáró mindig hozzáférhessen a csatolt kulcstartóhoz. Ha az Application Gateway nem tudja lekérni a tanúsítványt, a társított HTTPS-figyelők le lesznek tiltva. További információ.

Ez a cikk segít megérteni a hibakódok részleteit, valamint az ilyen kulcstartó helytelen konfigurációinak elhárításához szükséges lépéseket.

Tipp.

Olyan titkos azonosítót használjon, amely nem ad meg verziót. Így Azure-alkalmazás átjáró automatikusan elforgatja a tanúsítványt, ha egy újabb verzió érhető el az Azure Key Vaultban. Példa a titkos URI verzió nélküli használatára: https://myvault.vault.azure.net/secrets/mysecret/.

Azure Advisor hibakódok

Az alábbi szakaszok az esetlegesen előforduló hibákat ismertetik. A fiókHoz tartozó Azure Advisor felkeresésével ellenőrizheti, hogy az átjáró rendelkezik-e ilyen problémával, és ezt a hibaelhárítási cikket használva háríthatja el a problémát. Javasoljuk, hogy konfigurálja az Azure Advisor-riasztásokat, hogy értesüljenek arról, ha kulcstartóval kapcsolatos problémát észlel az átjáró.

Megjegyzés:

Azure-alkalmazás Átjáró négy óránként generál naplókat a Key Vault-diagnosztika számára. Ha a diagnosztika a konfiguráció kijavítása után is megjeleníti a hibát, előfordulhat, hogy várnia kell a naplók frissítésére.

Hibakód: UserAssignedIdentityDoesNotHaveGetPermissionOnKeyVault

Leírás: A társított felhasználó által hozzárendelt felügyelt identitás nem rendelkezik a szükséges engedélyekkel.

Megoldás: Konfigurálja a kulcstartó hozzáférési szabályzatait, hogy a felhasználó által hozzárendelt felügyelt identitás engedélyt adjon a titkos kódokhoz. Ezt az alábbi módokon teheti meg:

Tároló hozzáférési szabályzata

  1. Nyissa meg a csatolt kulcstartót az Azure Portalon.
  2. Nyissa meg az Access-szabályzatok panelt.
  3. Az engedélymodellhez válassza a Tároló hozzáférési szabályzatát.
  4. A Titkos kódok kezelése műveletek területen válassza a Get engedélyt.
  5. Válassza a Mentés parancsot.

 Screenshot that shows how to resolve the Get permission error.

További információ: Key Vault hozzáférési szabályzat hozzárendelése az Azure Portal használatával.

Azure szerepkör-alapú hozzáférés

  1. Nyissa meg a csatolt kulcstartót az Azure Portalon.
  2. Nyissa meg az Access-szabályzatok panelt.
  3. Az engedélymodellhez válassza az Azure szerepköralapú hozzáférés-vezérlését.
  4. Az engedélyek konfigurálásához lépjen a Hozzáférés-vezérlés (IAM) panelre.
  5. Szerepkör-hozzárendelés hozzáadása a felügyelt identitáshoz az alábbiak kiválasztásával
    a. Szerepkör: Key Vault titkos kulcsok felhasználója
    b. Hozzáférés hozzárendelése a következőhöz: Felügyelt identitás
    c. Tagok: Válassza ki a felhasználó által hozzárendelt felügyelt identitást, amelyet az application gatewayhez társított.
  6. Válassza az Áttekintés + hozzárendelés lehetőséget.

További információ: Azure szerepköralapú hozzáférés-vezérlés a Key Vaultban.

Megjegyzés:

Az Új kulcstartó-alapú tanúsítvány hozzáadásának portáltámogatása jelenleg nem érhető el az Azure szerepköralapú hozzáférés-vezérlés használatakor. Ezt ARM-sablon, parancssori felület vagy PowerShell használatával teheti meg. Útmutatásért látogasson el erre a lapra .

Hibakód: SecretDisabled

Leírás: A társított tanúsítvány le lett tiltva a Key Vaultban.

Megoldás: Engedélyezze újra az Application Gatewayhez jelenleg használt tanúsítványverziót.

  1. Nyissa meg a csatolt kulcstartót az Azure Portalon.
  2. Nyissa meg a Tanúsítványok panelt .
  3. Válassza ki a szükséges tanúsítványnevet, majd válassza ki a letiltott verziót.
  4. A felügyeleti lapon a kapcsolóval engedélyezze a tanúsítványverziót.

Screenshot that shows how to re-enable a secret.

Hibakód: SecretDeletedFromKeyVault

Leírás: A társított tanúsítvány törölve lett a Key Vaultból.

Megoldás: Törölt tanúsítvány helyreállítása:

  1. Nyissa meg a csatolt kulcstartót az Azure Portalon.
  2. Nyissa meg a Tanúsítványok panelt .
  3. A törölt tanúsítványok helyreállításához használja a Felügyelt törölt tanúsítványok lapot.

Ha viszont véglegesen töröl egy tanúsítványobjektumot, létre kell hoznia egy új tanúsítványt, és frissítenie kell az Application Gatewayt az új tanúsítványadatokkal. Amikor az Azure CLI-vel vagy az Azure PowerShell-lel konfigurál, használjon titkos azonosítójú URI-t verzió nélkül. Ez a választás lehetővé teszi a példányok számára a tanúsítvány megújított verziójának lekérését, ha létezik.

Screenshot that shows how to recover a deleted certificate in Key Vault.

Hibakód: UserAssignedManagedIdentityNotFound

Leírás: A társított felhasználó által hozzárendelt felügyelt identitás törölve lett.

Megoldás: Hozzon létre egy új felügyelt identitást, és használja a kulcstartóval.

  1. Hozzon létre újra egy felügyelt identitást ugyanazzal a névvel, amelyet korábban használt, és ugyanabban az erőforráscsoportban. (TIPP: Az elnevezés részleteiért tekintse meg az erőforrás-tevékenységnaplókat).
  2. Nyissa meg a kívánt Key Vault-erőforrást, és állítsa be a hozzáférési szabályzatait, hogy az új felügyelt identitásnak a szükséges engedélyt adja meg. A UserAssignedIdentityDoesNotHaveGetPermissionOnKeyVault területen ismertetett lépéseket követheti.

Hibakód: KeyVaultHasRestrictedAccess

Leírás: A Key Vault korlátozott hálózati beállítással rendelkezik.

Megoldás: Ez a hiba akkor jelenik meg, ha engedélyezi a Key Vault tűzfalát a korlátozott hozzáférés érdekében. Az Application Gatewayt továbbra is konfigurálhatja a Key Vault korlátozott hálózatában az alábbi lépések végrehajtásával:

  1. Nyissa meg a Hálózatkezelés panelt a Key Vaultban.
  2. Válassza a Tűzfalak és virtuális hálózatok lapot, majd a Privát végpont és a kijelölt hálózatok lehetőséget.
  3. Ezután a virtuális hálózatok használatával adja hozzá az Application Gateway virtuális hálózatát és alhálózatát. A folyamat során a "Microsoft.KeyVault" szolgáltatásvégpontot is konfigurálja a jelölőnégyzet bejelölésével.
  4. Végül válassza az Igen lehetőséget , ha engedélyezni szeretné, hogy a megbízható szolgáltatások megkerüljék a Key Vault tűzfalát.

Screenshot that shows how to work around the restricted network error.

Hibakód: KeyVaultSoftDeleted

Leírás: A társított kulcstartó helyreállítható törlési állapotban van.

Megoldás: Az Azure Portalon keresse meg a key vaultot. A Szolgáltatások területen válassza a Kulcstartók lehetőséget.

Screenshot that shows how to search for the Key Vault service.

Válassza a Felügyelt törölt tárolók lehetőséget. Innen megtalálhatja a törölt Key Vault-erőforrást, és helyreállíthatja azt. Screenshot that shows how to recover a deleted key vault.

Hibakód: CustomerKeyVaultSubscriptionDisabled

Leírás: A Key Vault előfizetése le van tiltva.

Megoldás: Az Azure-előfizetés különböző okokból letiltható. A megoldáshoz szükséges művelet végrehajtásához tekintse meg a letiltott Azure-előfizetés újraaktiválását.

Az Application Gateway hibakódjai

Hibakód: ApplicationGatewayCertificateDataOrKeyVaultSecretIdMustBeSpecified / ApplicationGatewaySslCertificateDataMustBeSpecified

Leírás: A figyelőtanúsítvány frissítésekor ez a hiba jelentkezhet. Ha ez a hiba jelentkezik, a rendszer elveti a tanúsítvány frissítésének módosítását, és a figyelő továbbra is a korábban meghatározott konfigurációval kezeli a forgalmat.

Megoldás: A probléma megoldásához próbálkozzon újra a tanúsítvány feltöltésével. Az alábbi PowerShell-parancsok például az Application Gatewayre feltöltött vagy az Azure Key Vaulton keresztül hivatkozott tanúsítványok frissítésére használhatók.

Közvetlenül az Application Gatewayre feltöltött tanúsítvány frissítése:

$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 

Az Azure Key Vaultból hivatkozott tanúsítvány frissítése:

$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 

Következő lépések

Ezek a hibaelhárítási cikkek hasznosak lehetnek az Application Gateway használatának folytatása során: