Benutzerdefinierte Domainnamen für WebSocket APIs in API Gateway - APIAmazon-Gateway

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Benutzerdefinierte Domainnamen für WebSocket APIs in API Gateway

Benutzerdefinierte Domänennamen sind einfachere und intuitivere URLs, die Sie Ihren API-Benutzern zur Verfügung stellen können.

Nach der Bereitstellung der API können Sie (und Ihre Kunden) die API mit der Standardstamm-URL im folgenden Format aufrufen:

https://api-id.execute-api.region.amazonaws.com/stage

Dabei wird die API-ID von API Gateway generiert, Region ist die AWS Region und Phase wird von Ihnen bei der Bereitstellung der API angegeben.

Der Hostnamen-Teil der URL api-id.execute-api.region.amazonaws.com bezieht sich auf einen API-Endpunkt. Der Standard-API-Endpunktname wird zufällig generiert, ist schwer zu merken und nicht benutzerfreundlich.

Mit benutzerdefinierten Domänennamen können Sie den Hostnamen Ihrer API einrichten und einen Basispfad (z. B. myservice) auswählen, um die alternative URL Ihrer API zuzuordnen. Eine benutzerfreundlichere API-Basis-URL kann dann folgendermaßen aussehen:

https://api.example.com/myservice

Überlegungen

Die folgenden Überlegungen können sich auf Ihre Verwendung eines benutzerdefinierten Domainnamens auswirken.

  • Wenn Sie einen benutzerdefinierten Domainnamen einer WebSocket API zuordnen, können Sie ihn keiner REST-API oder einer HTTP-API zuordnen.

  • Nur regionale benutzerdefinierte Domainnamen werden unterstützt.

  • Für die TLS-Mindestversion wird nur TLS 1.2 unterstützt.

  • Sie müssen den Ressourceneintrag Ihres DNS-Anbieters erstellen oder aktualisieren, damit er Ihrem API-Endpunkt zugeordnet wird. Ohne ein solches Mapping können API-Anfragen für den benutzerdefinierten Domänennamen API Gateway nicht erreichen.

  • Mithilfe eines Platzhalterzertifikats können Sie eine nahezu unendliche Anzahl von Domainnamen unterstützen, ohne das Standardkontingent zu überschreiten. Weitere Informationen finden Sie unter Benutzerdefinierte Domänennamen mit Platzhalter.

Voraussetzungen

Im Folgenden sind die Voraussetzungen für einen benutzerdefinierten Domainnamen aufgeführt.

Registrieren eines Domänennamens

Wenn Sie benutzerdefinierte Domänennamen für Ihre APIs einrichten möchten, müssen Sie eine Internetdomäne registrieren. Sie können Ihren Internet-Domainnamen über Amazon Route 53 oder über einen Drittanbieter-Domain-Registrar Ihrer Wahl registrieren. Ihr benutzerdefinierter Domainname kann der Name einer Subdomain oder der Root-Domain (auch als „Zone Apex“ bezeichnet) einer registrierten Internetdomain sein.

Ihr Domainname muss der RFC 1035-Spezifikation entsprechen und darf maximal 63 cek pro Label und 255 cek insgesamt haben.

Zertifikate für benutzerdefinierte Domänennamen

Bevor Sie einen benutzerdefinierten Domainnamen für eine API einrichten, müssen Sie in ACM über ein SSL/TLS-Zertifikat verfügen. Wenn ACM in der AWS Region, in der Sie Ihren benutzerdefinierten Domainnamen erstellen, nicht verfügbar ist, müssen Sie in dieser Region ein Zertifikat in API Gateway importieren.

Wenn Sie ein SSL-/TLS-Zertifikat importieren möchten, müssen Sie den PEM-formatierten Hauptteil des SSL-/TLS-Zertifikats, den persönlichen Schlüssel und die Zertifikatkette für den benutzerdefinierten Domänennamen bereitstellen.

Ein in ACM gespeichertes Zertifikat wird durch seinen ARN angegeben. Wenn Sie Zertifikate verwenden, die von ACM ausgestellt werden, brauchen sich keine Gedanken über vertrauliche Zertifikatdetails wie private Schlüssel zu machen. Um ein AWS verwaltetes Zertifikat für einen Domainnamen zu verwenden, verweisen Sie einfach auf dessen ARN.

Wenn Ihre Anwendung Zertifikat-Pinning, manchmal auch SSL-Pinning genannt, verwendet, um ein ACM-Zertifikat anzuheften, kann die Anwendung nach der AWS Verlängerung des Zertifikats möglicherweise keine Verbindung zu Ihrer Domain herstellen. Weitere Informationen finden Sie unter Probleme beim Zertifikats-Pinning im AWS Certificate Manager -Benutzerhandbuch.

Benutzerdefinierte Domänennamen mit Platzhalter

Mit benutzerdefinierten Platzhalter-Domänennamen können Sie eine nahezu unendliche Anzahl von Domänennamen unterstützen, ohne das Standardkontingentzu überschreiten. Zum Beispiel könnten Sie jedem Ihrer Kunden einen eigenen Domänennamen geben, customername.api.example.com.

Um einen benutzerdefinierten Platzhalterdomänennamen zu erstellen, geben Sie einen Platzhalter (*) als erste Subdomäne einer benutzerdefinierten Domäne an, die alle möglichen Subdomänen einer Root-Domäne darstellt.

Der benutzerdefinierte Domänenname mit Platzhalter *.example.com führt beispielsweise zu Unterdomänen wie a.example.com, b.example.com und c.example.com, die alle zur gleichen Domäne weiterleiten.

Benutzerdefinierte Domänennamen mit Platzhaltern unterstützen andere Konfigurationen als die benutzerdefinierten Standarddomänennamen von API Gateway. In einem einzelnen AWS Konto können Sie beispielsweise unterschiedliche Einstellungen vornehmen *.example.com und a.example.com sich anders verhalten.

Sie können die Kontextvariablen $context.domainName und $context.domainPrefix verwenden, um den Domänennamen zu bestimmen, mit dem ein Client Ihre API aufruft. Weitere Informationen zu Kontextvariablen finden Sie unter APIVorlage für die Gateway-Zuordnung und Referenz für die Zugriffsprotokollierung.

Um einen benutzerdefinierten Domänennamen mit Platzhalter zu erstellen, müssen Sie ein von ACM ausgestelltes Zertifikat angeben, das mithilfe der DNS- oder der E-Mail-Validierungsmethode validiert wurde.

Anmerkung

Sie können keinen benutzerdefinierten Platzhalter-Domänennamen erstellen, wenn ein anderes AWS Konto einen benutzerdefinierten Domänennamen erstellt hat, der mit dem benutzerdefinierten Platzhalter-Domänennamen in Konflikt steht. Wurde a.example.com beispielsweise von Konto A erstellt, dann kann Konto B als benutzerdefinierten Domänennamen mit Platzhalter nicht *.example.com erstellen.

Wenn Konto A und Konto B den gleichen Besitzer haben, können Sie sich an das AWS Supportcenter wenden, um eine Ausnahme anzufordern.

Die nächsten Schritte für benutzerdefinierte Domainnamen

Um einen benutzerdefinierten Domainnamen für eine HTTP-API einzurichten, verwenden Sie die Dokumentation aus dem Abschnitt REST API des API Gateway Developer Guide.

Geben Sie zunächst ein Zertifikat für Ihren benutzerdefinierten Domainnamen an. Weitere Informationen finden Sie unter Bereiten Sie die Zertifikate vor in AWS Certificate Manager. Als Nächstes erstellen Sie einen regionalen benutzerdefinierten Domainnamen. Weitere Informationen finden Sie unter Richten Sie einen regionalen benutzerdefinierten Domainnamen in API Gateway ein.