API Gateway API のカスタムドメイン名をセットアップする方法を教えてください。

所要時間2分
0

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

簡単な説明

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

注:カスタムドメイン名はプライベート 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 バージョンは、TLS 1.2 のみです。

解決策

SSL/TLS 証明書をリクエストするか、インポートする

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

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

**注:**詳細については、「AWS 証明書マネージャーで証明書を準備する」を参照してください。

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

  • ドメイン検証チェックに合格するには、証明書に代替ドメイン名としてカスタムドメイン名を含めておく必要があります。
    **注:**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 については、「WebSocket API のカスタムドメイン名のセットアップ」の手順に従ってください。

API ゲートウェイ API にトラフィックをルーティングする

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

Route 53 を設定して API Gateway エンドポイントにトラフィックをルーティングする」の指示に従ってください。

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

新しいカスタムドメイン名で API を呼び出してセットアップをテストします。

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

2.    カスタムドメイン名への応答が、API ステージ URL を呼び出したときに受け取る応答と同じであることを確認します。


関連情報

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

公開証明書のリクエスト

コメントはありません

関連するコンテンツ