Konfiguration benutzerdefinierter Domainnamen für GraphQL und Echtzeit APIs - AWS AppSync

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.

Konfiguration benutzerdefinierter Domainnamen für GraphQL und Echtzeit APIs

Mit können Sie benutzerdefinierte Domainnamen verwenden AWS AppSync, um eine einzelne, einprägsame Domain zu konfigurieren, die sowohl für Ihr GraphQL als auch für Echtzeit APIs funktioniert.

Mit anderen Worten, Sie können einen einfachen und einprägsamen Endpunkt URLs mit Domainnamen Ihrer Wahl verwenden, indem Sie benutzerdefinierte Domainnamen erstellen, die Sie mit den AWS AppSync APIs in Ihrem Konto verknüpfen.

Wenn Sie einen konfigurieren AWS AppSync API, werden zwei Endpunkte bereitgestellt:

AWS AppSync GraphQL-Endpunkt:

https://example1234567890000.appsync-api.us-east-1.amazonaws.com/graphql

AWS AppSync Echtzeit-Endpunkt:

wss://example1234567890000.appsync-realtime-api.us-east-1.amazonaws.com/graphql

Mit benutzerdefinierten Domainnamen können Sie über eine einzige Domain mit beiden Endpunkten interagieren. Wenn Sie beispielsweise api.example.com als Ihre benutzerdefinierte Domain konfigurieren, können Sie mit diesen sowohl mit Ihren GraphQL- als auch mit Echtzeit-Endpunkten interagieren: URLs

AWS AppSync GraphQL-Endpunkt für benutzerdefinierte Domänen:

https://api.example.com/graphql

AWS AppSync Echtzeit-Endpunkt für benutzerdefinierte Domänen:

wss://api.example.com/graphql/realtime

Anmerkung

AWS AppSync APIsunterstützt nur TLS 1.2 und TLS 1.3 für benutzerdefinierte Domainnamen.

Registrierung und Konfiguration eines Domainnamens

Um benutzerdefinierte Domainnamen für Sie einzurichten AWS AppSync APIs, benötigen Sie einen registrierten Internet-Domainnamen. Sie können eine Internetdomain bei einem Domain-Registrar Ihrer Wahl Amazon Route 53 domain registration oder bei einem Domain-Registrar eines Drittanbieters registrieren. Weitere Informationen zu Route 53 finden Sie unter Was ist Amazon Route 53? im Amazon Route 53 Developer Guide.

Der benutzerdefinierte Domainname API von An kann der Name einer Subdomain oder der Root-Domain (auch als „Zone Apex“ bezeichnet) einer registrierten Internet-Domain sein. Nachdem Sie einen benutzerdefinierten Domainnamen in erstellt haben AWS AppSync, müssen Sie den Ressourceneintrag Ihres DNS Anbieters erstellen oder aktualisieren, um ihn Ihrem API Endpunkt zuzuordnen. Ohne diese Zuordnung können API Anfragen für den benutzerdefinierten Domainnamen nicht erreicht werden AWS AppSync.

Einen benutzerdefinierten Domainnamen erstellen in AWS AppSync

Das Erstellen eines benutzerdefinierten Domainnamens für einen AWS AppSync API richtet eine Amazon CloudFront Verteilung ein. Sie müssen einen DNS Datensatz einrichten, um den benutzerdefinierten Domainnamen dem CloudFront Vertriebsdomänennamen zuzuordnen. Diese Zuordnung ist erforderlich, um API Anfragen, die an den benutzerdefinierten Domänennamen gebunden sind, AWS AppSync über die zugeordnete CloudFront Verteilung weiterzuleiten. Außerdem müssen Sie ein Zertifikat für den benutzerdefinierten Domänennamen bereitstellen.

Um den benutzerdefinierten Domainnamen einzurichten oder das zugehörige Zertifikat zu aktualisieren, müssen Sie berechtigt sein, CloudFront Distributionen zu aktualisieren und das AWS Certificate Manager (ACM) -Zertifikat zu beschreiben, das Sie verwenden möchten. Um diese Berechtigungen zu gewähren, fügen Sie einem IAM Benutzer, einer Gruppe oder einer Rolle in Ihrem Konto die folgende AWS Identity and Access Management (IAM) Richtlinienerklärung bei:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUpdateDistributionForAppSyncCustomDomainName", "Effect": "Allow", "Action": ["cloudfront:updateDistribution"], "Resource": ["*"] }, { "Sid": "AllowDescribeCertificateForAppSyncCustomDomainName", "Effect": "Allow", "Action": "acm:DescribeCertificate", "Resource": "arn:aws:acm:<region>:<account-id>:certificate/<certificate-id>" } ] }

AWS AppSync unterstützt benutzerdefinierte Domainnamen, indem Server Name Indication (SNI) bei der CloudFront Verteilung genutzt wird. Weitere Informationen zur Verwendung benutzerdefinierter Domainnamen in einer CloudFront Distribution, einschließlich des erforderlichen Zertifikatsformats und der maximalen Zertifikatsschlüssellänge, finden Sie unter HTTPS Using with CloudFront im Amazon CloudFront Developer Guide.

Um einen benutzerdefinierten Domainnamen als Hostnamen einzurichten, muss der API Eigentümer ein SSL TLS /-Zertifikat für den benutzerdefinierten Domainnamen bereitstellen. API Gehen Sie wie folgt vor, um ein Zertifikat bereitzustellen:

  • Fordern Sie in der us-east-1 AWS Region (USA Ost (Nord-Virginia)) ein neues Zertifikat anACM, oder importieren Sie ein von einer Drittanbieter-Zertifizierungsstelle ausgestelltes Zertifikat ACM in diese Region. Weitere Informationen zu ACM finden Sie unter Was ist AWS Certificate Manager? im AWS Certificate Manager Benutzerhandbuch.

  • Stellen Sie ein IAM Serverzertifikat bereit. Weitere Informationen finden Sie IAMim IAMBenutzerhandbuch unter Verwalten von Serverzertifikaten.

Benutzerdefinierte Domänennamen mit Platzhaltern in AWS AppSync

AWS AppSync unterstützt benutzerdefinierte Domainnamen mit Platzhaltern. Um einen benutzerdefinierten Domainnamen mit Platzhaltern zu konfigurieren, geben Sie ein Platzhalterzeichen (*) als erste Subdomain einer benutzerdefinierten Domäne an. Dies steht für alle möglichen Subdomänen der Stammdomäne. Beispielsweise *.example.com führt der benutzerdefinierte Domänenname mit Platzhaltern zu Subdomänen wiea.example.com, undb.example.com. c.example.com Alle diese Subdomänen werden zu derselben Domain weitergeleitet.

Um einen benutzerdefinierten Domainnamen mit Platzhalter verwenden zu können AWS AppSync, müssen Sie ein Zertifikat bereitstellen, das einen Platzhalternamen ACM enthält, der mehrere Websites in derselben Domain schützen kann. Weitere Informationen finden Sie im AWS Certificate Manager Benutzerhandbuch unter Eigenschaften von ACM Zertifikaten.