Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Wie behebe ich Fehler mit von API Gateway generierten SSL-Zertifikaten?
Ich möchte Probleme mit von Amazon API Gateway generierten selbstsignierten und abgelaufenen SSL-Zertifikaten lösen, die ich auf meinem Backend-System installiert habe.
Lösung
HTTP-Proxy-Testintegration
Verwende die API Gateway-Konsole, um schlechte SSL-Zertifikate zu testen. Eine Liste der schlechten SSL-Zertifikate findest du unter badssl.com auf der Website zu Bad SSL.
Führe die folgenden Schritte aus:
- Erstelle eine Ressource mit dem Namen /selfsigned.
- Erstelle eine GET-Methode für die Ressource.
- Konfiguriere eine HTTP-Proxyintegration mit der URL.
- Öffne die API Gateway-Konsole.
- Teste die API.
- Wiederhole jeden der vorherigen Schritte mit einer Ressource /expiredcert und dann mit einer weiteren Ressource mit dem Namen /untrustedRootCA.
Für die Ressource mit dem Namen /selfsigned erhältst du die folgende Fehlermeldung:
„Thu Dec 15 16:05:05 UTC 2022 : Sending request to https://self-signed.badssl.com/
Thu Dec 15 16:05:05 UTC 2022 : Execution failed due to configuration error: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target“ (Donnerstag, 15. Dezember, 16:05:05 UTC 2022: Anfrage an https://self-signed.badssl.com/ senden
Donnerstag, 15. Dezember, 16:05:05 UTC 2022: Ausführung fehlgeschlagen aufgrund eines Konfigurationsfehlers: Fehler beim Erstellen des PKIX-Pfads: sun.security.provider.certpath.SunCertPathBuilderException: Es konnte kein gültiger Zertifizierungspfad zum angeforderten Ziel gefunden werden)
Für die Ressource mit dem Namen /expiredcert erhältst du die folgende Fehlermeldung:
„Thu Dec 15 16:06:02 UTC 2022 : Sending request to https://expired.badssl.com/
Thu Dec 15 16:06:02 UTC 2022 : Execution failed due to configuration error: PKIX path validation failed: java.security.cert.CertPathValidatorException: validity check failed“ (Donnerstag, 15. Dezember, 16:06:02 UTC 2022: Anfrage an https://expired.badssl.com/ senden
Donnerstag, 15. Dezember, 16:06:02 UTC 2022:Ausführung fehlgeschlagen aufgrund eines Konfigurationsfehlers: PKIX-Pfadvalidierung fehlgeschlagen: java.security.cert.certPathValidatorException: Gültigkeitsprüfung fehlgeschlagen)
Für die Ressource mit dem Namen /untrustedRootCA erhältst du die folgende Fehlermeldung:
„Thu Dec 15 16:06:28 UTC 2022 : Sending request to https://untrusted-root.badssl.com/
Thu Dec 15 16:06:28 UTC 2022 : Execution failed due to configuration error: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target“ (Donnerstag, 15. Dezember, 16:06:28 UTC 2022: Anfrage an https://untrusted-root.badssl.com/ senden
Donnerstag, 15. Dezember, 16:06:28 UTC 2022: Ausführung fehlgeschlagen aufgrund eines Konfigurationsfehlers: Fehler beim Erstellen des PKIX-Pfads: sun.security.provider.certpath.SunCertPathBuilderException: Es konnte kein gültiger Zertifizierungspfad zum angeforderten Ziel gefunden werden)
Konfigurationsfehler beheben
Hinweis: Wenn du beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version von AWS CLI verwendest.
Wenn ein Network Load Balancer über einen TLS-Listener verfügt, führt der Network Load Balancer eine TLS-Terminierung durch und stellt eine weitere Verbindung zum Ziel her. Das Zertifikat, das an den Network Load Balancer angehängt ist, muss alle Anforderungen erfüllen.
Ein Network Load Balancer führt während des SSL-Handshakes mit dem Ziel keine Zertifikatsvalidierung durch. Der Network Load Balancer akzeptiert abgelaufene oder selbstsignierte Zertifikate, die du auf den Ziel-Instances installiert hast. Der Network Load Balancer und die Zielgruppen sind innerhalb einer Virtual Private Cloud (VPC) miteinander verbunden. Wenn der Network Load Balancer einen TCP-Listener verwendet, erfolgt der TLS-Handshake Ende-zu-Ende. In diesem Fall muss die Backend-Anwendung die SSL-Anforderungen erfüllen.
API Gateway unterstützt Server Name Indication (SNI) während eines SSL-Handshakes über eine VPC-Link-Integration.
Wenn der Backend-Network Load Balancer über ein selbstsigniertes oder privates Zertifikat verfügt, das keine Zertifizierungsstelle (CA) ausgestellt hat, erhältst du die folgende Fehlermeldung:
„Execution failed due to configuration error: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target“ (Ausführung fehlgeschlagen aufgrund eines Konfigurationsfehlers: Fehler beim Erstellen des PKIX-Pfads: sun.security.provider.certpath.SunCertPathBuilderException: Es konnte kein gültiger Zertifizierungspfad zum angeforderten Ziel gefunden werden)
Um dieses Problem zu beheben, führe den folgenden AWS-CLI-Befehl update-integration aus und setze insecureSkipVerification im TLSConfig-Objekt der Integration auf true:
aws apigateway update-integration --rest-api-id EXAMPLE-REST-API-ID --resource-id EXAMPLE-RESOURCE-ID --http-method GET --patch-operations "op='replace',path='/tlsConfig/insecureSkipVerification',value=true"
Hinweis: Ersetze EXAMPLE-REST-API-ID und EXAMPLE-RESOURCE-ID durch deine Werte.
Ähnliche Informationen
Generieren und Konfigurieren eines SSL-Zertifikats für die Backend-Authentifizierung in API Gateway
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor einem Jahr
AWS OFFICIALAktualisiert vor 4 Monaten