Direkt zum Inhalt

Wie kann ich einen öffentlichen benutzerdefinierten Domainnamen für meine API-Gateway-API einrichten?

Lesedauer: 4 Minute
0

Ich möchte für meine Amazon-API-Gateway-API einen benutzerdefinierten Domainnamen anstelle der Standard-Basis-URL verwenden.

Kurzbeschreibung

Es gibt zwei Arten von benutzerdefinierten Domainnamen, die du für API Gateway-APIs erstellen kannst: Regional oder (nur für REST-APIs) Edge-optimiert.

**Hinweis:**API Gateway unterstützt benutzerdefinierte Domainnamen für private APIs.

Gehe wie folgt vor, um einen benutzerdefinierten Domainnamen für die API Gateway-API einzurichten:

Um eine benutzerdefinierte Domain erfolgreich zu konfigurieren, musst du die Unterschiede zwischen den benutzerdefinierten Domainnamentypen verstehen. Im Folgenden sind einige wichtige Unterschiede zwischen regionalen und Edge-optimierten benutzerdefinierten Domainnamen aufgeführt:

  • Für Zielendpunkte verwenden regionale benutzerdefinierte Domainnamen einen regionalen API-Endpunkt. Edge-optimierte benutzerdefinierte Domainnamen verwenden eine Amazon-CloudFront-Verteilung.
  • Für SSL/TLS-Zertifikate müssen regionale benutzerdefinierte Domainnamen ein SSL/TLS-Zertifikat verwenden, das sich in derselben AWS-Region wie die API befindet. Edge-optimierte benutzerdefinierte Domainnamen müssen ein Zertifikat verwenden, das sich in der folgenden Region befindet: USA Ost (Nord-Virginia) (us-east-1).
  • Für benutzerdefinierte Domainnamen kannst du regionale benutzerdefinierte Domainnamen in verschiedenen AWS-Regionen freigeben. Edge-optimierte benutzerdefinierte Domainnamen sind eindeutig. Du kannst benutzerdefinierte Domainnamen nicht mehr als einer CloudFront-Verteilung zuordnen.
  • Bei Domainnamen kannst du keinen regionalen benutzerdefinierten Domainnamen für eine WebSocket-API einer REST-API oder HTTP-API zuordnen. Du kannst jedoch eine regionale benutzerdefinierte Domain REST-APIs und HTTP-APIs zuordnen. Bei REST-APIs können sowohl Edge-optimierte als auch regionale benutzerdefinierte Domainnamen Zuordnungen für Edge-optimierte API-Endpunkte, regionale API-Endpunkte oder beides haben. Für WebSocket-APIs und HTTP-APIs ist TLS 1.2 die einzige unterstützte TLS-Version.

Behebung

Anfordern oder Importieren eines SSL/TLS-Zertifikats

Bevor du einen benutzerdefinierten Domainnamen für die API erstellst, musst du einen der folgenden Schritte ausführen:

  • Fordere ein SSL/TLS-Zertifikat von AWS Certificate Manager (ACM) an.
  • Importiere ein SSL/TLS-Zertifikat in ACM.

Hinweis: Weitere Informationen findest du unter Bereitstellen von Zertifikaten in AWS Certificate Manager.

Wenn du das Zertifikat anforderst oder importierst, musst du die folgenden Anforderungen erfüllen:

  • Um die Domain-Validierungsprüfungen zu bestehen, muss das Zertifikat den benutzerdefinierten Domainnamen als alternativen Domainnamen einbeziehen.
    Hinweis: Weitere Informationen zu Validierungsprüfungen mit CloudFront-Verteilungen für Edge-optimierte benutzerdefinierte Domainnamen findest du unter Kontinuierliche Verbesserung der Domainsicherheit auf Amazon CloudFront. Es gibt ähnliche Validierungsprüfungen für regionale benutzerdefinierte Domainnamen.
  • Für einen regionalen benutzerdefinierten Domainnamen muss sich das ACM-Zertifikat in derselben Region wie die API befinden.

Erstellen des benutzerdefinierten Domainnamens für die REST-API, HTTP-API oder WebSocket-API

Befolge bei REST-APIs die Anweisungen unter Benutzerdefinierter Domainname für öffentliche REST-APIs in API Gateway.

Befolge bei HTTP-APIs die Anweisungen unter Benutzerdefinierte Domainnamen für HTTP-APIs in API Gateway.

Befolge bei WebSocket-APIs die Anweisungen unter Benutzerdefinierte Domainnamen für WebSocket-APIs in API.

Weiterleiten des Datenverkehrs an die API-Gateway-API

Verwende Amazon Route 53, um den Datenverkehr an die benutzerdefinierte Domain weiterzuleiten.

Um den Datenverkehr an die API-Gateway-API weiterzuleiten, befolge die Anweisungen unter Konfiguration von Route 53, um den Datenverkehr an einen API-Gateway-Endpunkt weiterzuleiten.

Wenn du Route 53 konfigurierst, musst du entweder eine öffentlich gehostete Zone oder eine private gehostete Zone erstellen. Wähle für mit dem Internet verbundene Anwendungen mit Ressourcen, die du Benutzern zur Verfügung stellen möchtest, eine öffentliche gehostete Zone. Weitere Informationen findest du unter Arbeiten mit gehosteten Zonen.

Um zu ermitteln, wohin der Datenverkehr für die Domain weitergeleitet wird, verwendet Route 53 Datensätze. Alias-Datensätze ermöglichen einfachere DNS-Abfragen an AWS-Ressourcen, während CNAME-Datensätze (ohne Alias) DNS-Abfragen außerhalb von AWS-Ressourcen umleiten können. Weitere Informationen findest du unter Wählen zwischen Alias-Datensätzen und Nicht-Alias-Datensätzen.

Testen der Konfiguration

Um die Konfiguration zu testen, kannst du den neuen benutzerdefinierten Domainnamen verwenden, um die API aufzurufen:

  1. Verwende die Basispfadzuweisung, die du beim Erstellen des benutzerdefinierten Domainnamens angibst, um einen curl-Befehl für den Domainnamen auszuführen.
    Hinweis: Weitere Informationen zu curl findest du auf der Website des curl-Projekts.
  2. Stelle sicher, dass die Antwort auf den benutzerdefinierten Domainnamen dieselbe Antwort ist, die du erhältst, wenn du die API-Stufen-URL aufrufst.

Ähnliche Informationen

Einen benutzerdefinierten Domainnamen zu einem anderen API-Endpunkttyp in API Gateway migrieren

Ein öffentliches Zertifikat von AWS Certificate Manager anfordern