API Gateway API のカスタムドメイン名を設定するにはどうすればよいですか?

所要時間2分
0

デフォルトのベース URL を使用する代わりに、Amazon API Gateway API にカスタムドメイン名を使用したいと考えています。設定方法を教えてください。

簡単な説明

API ゲートウェイ API 用に作成できるカスタムドメイン名には、リージョン または (REST API のみ ) エッジ最適化の 2 種類があります。

注: カスタムドメイン名は、プライベート REST API ではサポートされていません

API Gateway API のカスタムドメイン名を設定するには、次の手順を実行します。

以下は、リージョンとエッジ最適化カスタム ドメイン名の主な違いのいくつかです。

ターゲットエンドポイントの違い

リージョナル別カスタムドメイン名では、リージョナル API エンドポイントを使用します

エッジ最適化カスタムドメイン名では、Amazon CloudFront ディストリビューションを使用します。

SSL/TLS 証明書の違い

リージョン別カスタムドメイン名は、API と同じ AWS リージョンにある SSL/TLS 証明書を使用する必要があります。

エッジ最適化カスタムドメイン名では、米国東部 ( バージニア北部 ) (us-east-1) のリージョンの証明書を使用する必要があります:

カスタムドメイン名の違い

リージョン別カスタムドメイン名は、異なる AWS リージョンにある他のリージョナルカスタムドメイン名で共有できます。

エッジ最適化カスタムドメイン名は一意であり、複数の CloudFront ディストリビューションに関連付けることはできません。

ドメイン名マッピングの違い

WebSocket API のリージョン別カスタムドメイン名は、REST API または HTTP API にマッピングできません。ただし、リージョン別カスタムドメインは REST API と HTTP API に関連付けることができます。

REST API の場合、エッジ最適化カスタムドメイン名とリージョン別カスタムドメイン名の両方に、エッジ最適化 API エンドポイントリージョン API エンドポイント、またはその両方のマッピングを含めることができます。

WebSocket API および HTTP API の場合、TLS 1.2 のみがサポートされる TLS バージョンです。

解決方法

SSL/TLS 証明書をリクエストまたはインポートする

API のカスタムドメイン名を作成する前に、次のいずれかの操作を行う必要があります。

  • AWS Certificate Manager (ACM) の SSL/TLS 証明書をリクエストします。
  • または -
  • SSL/TLS 証明書を ACM にインポートします。

注: 詳細については、AWS Certificate Manager で証明書を準備するを参照してください。

証明書をリクエストまたはインポートするときは、以下の要件に注意してください。

  • ドメイン検証チェックに合格するには、代替ドメイン名としてカスタムドメイン名が証明書に含まれている必要があります。
    注: ( エッジ最適化カスタムドメイン名用 ) CloudFront ディストリビューションでの検証チェックの詳細については、「Continually Enhancing Domain Security on Amazon CloudFront」(Amazon CloudFront でのドメインセキュリティを継続的に強化する) を参照してください。リージョン別カスタムドメイン名にも同様の検証チェックがあります。
  • エッジ最適化されたカスタムドメイン名の場合、ACM 証明書は 米国東部 ( バージニア北部 ) (us-east-1) リージョンにある必要があります。
  • リージョン別カスタムドメイン名の場合、ACM 証明書は API と同じリージョンに存在する必要があります。

REST API、HTTP API、または WebSocket API のカスタムドメイン名を作成する

REST API の場合は、REST API のカスタムドメイン名の設定の手順に従います。

HTTP API の場合は、HTTP API のカスタムドメイン名の設定の手順に従います。

WebSocket API の場合は、「Setting up custom domain names for WebSocket APIs」(WebSocket API のカスタムドメイン名の設定) の手順に従います。

API Gateway API にトラフィックをルーティングする

Amazon Route 53 を使用して、カスタムドメインにトラフィックをルーティングします。これにより、ユーザーがドメインにアクセスしたときにアクセスできるリソースをより細かく制御できます。

Configuring Route 53 to route traffic to an API Gateway endpoint」 (API Gateway エンドポイントにトラフィックをルーティング) の手順に従います。

  • Route 53 を設定するときは、パブリックホストゾーンまたはプライベートホストゾーンのいずれかを作成する必要があります。ユーザーが利用できるようにしたいリソースを持つインターネットに直接接続するアプリケーションの場合は、パブリックホストゾーンを選択します。詳細については、「ホストゾーンの使用」を参照してください。
  • Route 53 はレコードを使用して、ドメインのトラフィックがルーティングされる場所を特定します。エイリアスレコードは AWS リソースへの DNS クエリをより簡単に提供し、CNAME(非エイリアス)レコードは AWS リソースの外に DNS クエリをリダイレクトできます。詳細については、「エイリアスレコードと非エイリアスレコードの選択」を参照してください。

新しいカスタムドメイン名を使用して API を呼び出して、セットアップをテストする

1.    カスタムドメイン名を作成したときに指定したベースパスマッピングを使用して、ドメイン名で curl コマンドを実行します。
注: curl の詳細については、「curl プロジェクトのウェブサイト」を参照してください。

2.    カスタムドメイン名に対するレスポンスが、API ステージ URL を呼びだすときに受け取るレスポンスと同じであることを確認します。


関連情報

カスタムドメイン名を別の API エンドポイントに移行する

公開証明書をリクエストする

コメントはありません

関連するコンテンツ