Benutzerdefinierter Domainname für REST-APIs in API Gateway - Amazon API 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.

Benutzerdefinierter Domainname für REST-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.

  • Benutzerdefinierte Domänennamen werden für private APIs nicht unterstützt.

  • Sie können den Standardendpunkt für Ihre API deaktivieren. Clients können weiterhin eine Verbindung mit Ihrem Standardendpunkt herstellen, erhalten jedoch einen 403 Forbidden-Statuscode.

  • Ein regionaler benutzerdefinierter Domainname kann mit REST-APIs und HTTP-APIs verknüpft werden. Sie können die API Gateway Version 2-APIs verwenden, um regionale benutzerdefinierte Domainnamen für REST-APIs zu erstellen und zu verwalten.

  • Ein benutzerdefinierter Domainname muss innerhalb einer Region für alle AWS Konten eindeutig sein.

  • Sie können Ihren benutzerdefinierten Domänennamen zwischen Edge-optimierten und regionalen Endpunkten migrieren.

  • Sie müssen den Ressourceneintrag Ihres DNS-Anbieters erstellen oder aktualisieren, um ihn Ihrem API-Endpunkt zuzuordnen. 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.

  • Sie können eine Sicherheitsrichtlinie für Ihren benutzerdefinierten Domainnamen auswählen. Weitere Informationen finden Sie unter Wählen Sie eine Sicherheitsrichtlinie für Ihre benutzerdefinierte REST-API-Domain in API Gateway.

  • Um API-Zuordnungen mit mehreren Ebenen zu konfigurieren, müssen Sie einen regionalen benutzerdefinierten Domainnamen und die Sicherheitsrichtlinie TLS 1.2 verwenden.

Voraussetzungen

Im Folgenden sind die Voraussetzungen für die Erstellung eines benutzerdefinierten Domainnamens 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.

Geben Sie das Zertifikat für Ihren benutzerdefinierten Domainnamen an

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 Referenz zu API Gateway-Mapping-Vorlage und -Zugriffsprotokollierungsvariablen.

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

Im Folgenden sind die nächsten Schritte für benutzerdefinierte Domainnamen aufgeführt:

Nächste Schritte

Wenn Sie zum ersten Mal einen benutzerdefinierten Domainnamen erstellen, empfehlen wir IhnenBereiten Sie die Zertifikate vor in AWS Certificate Manager, zunächst Ihr Zertifikat anzugeben und dann einen regionalen benutzerdefinierten Domainnamen Richten Sie einen regionalen benutzerdefinierten Domainnamen in API Gateway ein zu erstellen.