GraphQL とリアルタイム用のカスタムドメイン名の設定 APIs - AWS AppSync

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

GraphQL とリアルタイム用のカスタムドメイン名の設定 APIs

では AWS AppSync、カスタムドメイン名を使用して、GraphQL とリアルタイムの両方で動作する単一の記憶に残るドメインを設定できますAPIs。

つまり、アカウントの に関連付ける AWS AppSync APIsカスタムドメイン名を作成することで、選択したドメイン名URLsでシンプルで記憶に残るエンドポイントを利用できます。

を設定すると AWS AppSync API、次の 2 つのエンドポイントがプロビジョニングされます。

AWS AppSync GraphQL エンドポイント:

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

AWS AppSync リアルタイムエンドポイント:

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

カスタムドメイン名を使用すると、1 つのドメインを使用して両方のエンドポイントを操作できます。例えば、 をカスタムドメインapi.example.comとして設定する場合、次の を使用して GraphQL エンドポイントとリアルタイムエンドポイントの両方を操作できますURLs。

AWS AppSync カスタムドメイン GraphQL エンドポイント:

https://api.example.com/graphql

AWS AppSync カスタムドメインのリアルタイムエンドポイント:

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

注記

AWS AppSync APIs TLSは、カスタムドメイン名に対して 1.2 と TLS 1.3 のみをサポートします。

ドメイン名を登録および設定する

のカスタムドメイン名を設定するには AWS AppSync APIs、登録済みのインターネットドメイン名が必要です。 Amazon Route 53 domain registration を使用するか、お好みのサードパーティーのドメインレジストラを使用して、インターネットドメインを登録できます。Route 53 リゾルバーの詳細については、「Amazon Route 53 デベロッパーガイド」の「Amazon Route 53 とは?」を参照してください。

APIのカスタムドメイン名は、登録されたインターネットドメインのサブドメインまたはルートドメイン (「zone apex」とも呼ばれます) の名前にすることができます。でカスタムドメイン名を作成したら AWS AppSync、DNSプロバイダーのリソースレコードを作成または更新して、APIエンドポイントにマッピングする必要があります。このマッピングがないと、カスタムドメイン名にバインドされたAPIリクエストは に到達できません AWS AppSync。

でのカスタムドメイン名の作成 AWS AppSync

のカスタムドメイン名を作成すると、 AWS AppSync API Amazon CloudFront ディストリビューションが設定されます。カスタムドメイン名を CloudFront ディストリビューションドメイン名にマッピングするDNSレコードを設定する必要があります。このマッピングは、マッピング CloudFrontされたディストリビューション AWS AppSync を介してカスタムドメイン名にバインドされたAPIリクエストをルーティングするために必要です。カスタムドメイン名の証明書を提供する必要もあります。

カスタムドメイン名を設定したり、証明書を更新したりするには、 CloudFront ディストリビューションを更新し、使用する AWS Certificate Manager 予定の (ACM) 証明書を記述するアクセス許可が必要です。これらのアクセス許可を付与するには、次の AWS Identity and Access Management (IAM) ポリシーステートメントをアカウントのIAMユーザー、グループ、またはロールにアタッチします。

{ "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 は、 CloudFront ディストリビューションで Server Name Indication (SNI) を活用することで、カスタムドメイン名をサポートします。必要な証明書形式や証明書キーの最大長など、ディストリビューションでの CloudFrontカスタムドメイン名の使用の詳細については、Amazon CloudFront デベロッパーガイドの「 HTTPSで CloudFrontを使用する」を参照してください。

カスタムドメイン名を APIのホスト名として設定するには、API所有者がカスタムドメイン名の SSL/TLS 証明書を指定する必要があります。証明書を提供するには、次のいずれかを実行します。

  • で新しい証明書をリクエストするかACM、サードパーティー認証機関によって発行された証明書を us-east-1 AWS リージョン (米国東部 (バージニア北部)) ACMの にインポートします。の詳細についてはACM、「 AWS Certificate Manager ユーザーガイド」の「 とは AWS Certificate Manager」を参照してください。

  • IAM サーバー証明書を指定します。詳細については、「 ユーザーガイド」の「 でのサーバー証明書の管理IAMIAM」を参照してください。

のワイルドカードカスタムドメイン名 AWS AppSync

AWS AppSync はワイルドカードカスタムドメイン名をサポートします。ワイルドカードカスタムドメイン名を設定するには、カスタムドメインの最初のサブドメインとして、ワイルドカード文字 (*) を指定します。これはルートドメインのすべての可能なサブドメインを表します。たとえば、ワイルドカードカスタムドメイン名として *.example.com を使用すると、a.example.comb.example.comc.example.com などのサブドメインが生成されます。これらのサブドメインはすべて同じドメインにルーティングされます。

でワイルドカードカスタムドメイン名を使用するには AWS AppSync、同じドメイン内の複数のサイトを保護できるワイルドカード名ACMを含む によって発行された証明書を提供する必要があります。詳細については、「 ユーザーガイドACM」の「証明書の特性AWS Certificate Manager 」を参照してください。