カスタム ドメインの設定

Cloud Endpoints API のポータルを作成する場合、ポータルのホストはデフォルトで、Google が所有、管理する cloud.goog ドメインになります。ポータルのデフォルト URL は、次の形式になっています。ここで、YOUR_PROJECT_ID は Endpoints 構成のデプロイ先となっている Google Cloud プロジェクトです。

https://endpointsportal.YOUR_PROJECT_ID.cloud.goog
OpenAPI ドキュメントの host フィールドにカスタム ドメイン(example.commy-api.example.com など)を指定した場合でも、これがデフォルトの URL になります。

API のユーザーにカスタム ドメインを使ってポータルにアクセスさせるには、Cloud Endpoints Portal と DNS の設定をドメイン名登録事業者(レジストラ)で構成する必要があります。カスタム ドメインをポータルに追加するとき、ドメイン名登録事業者で構成する必要のある DNS レコードのタイプなどの情報が Endpoints Portal に表示されます。

このページでは、Endpoints Portal でカスタム ドメインを使用するための構成について説明します。また、それぞれのタスクを実行するために最低限必要な Identity and Access Management のロールについても説明します。IAM の権限について詳しくは、以下をご覧ください。

前提条件

このガイドでは次の条件を前提としています。

カスタム ドメインの追加

  1. Google Cloud Console で、プロジェクトの [エンドポイント] > [デベロッパー ポータル] ページに移動します。

    Cloud Endpoints Portal に移動

  2. [カスタム ドメインを追加してください] をクリックします。
  3. ルートドメイン名またはサブドメイン名を入力します。
  4. ドメインを追加するには、[続行] をクリックします。
  5. Endpoints Portal に [DNS レコードの更新] と表示されます。[DNS レコードの更新] セクションにリストされているすべてのレコードについて、ドメイン名登録事業者を使用して DNS レコードを追加します。

    • たとえば example.com などのルートドメインを入力した場合、[DNS レコードの更新] セクションに A レコードと AAAA レコードの一覧が IP アドレスとともに表示されます。例:

      タイプ データ エイリアス
      A 198.51.100.0 -
      A 198.51.100.2 -
      A 198.51.100.4 -
      A 198.51.100.6 -
      AAAA 2001:db8:ffff:32::15 -
      AAAA 2001:db8:ffff:34::15 -
      AAAA 2001:db8:ffff:36::15 -
      AAAA 2001:db8:ffff:38::15 -

      1 つのドメイン名に対して複数の A レコードと AAAA レコードを追加する場合の構成手順と用語は、使用するドメイン名登録事業者によって異なります。不明な場合は、ドメイン名登録業者のドキュメントで、「レコードセット」や「複数のレスポンス」などの用語を検索してください。

    • たとえば、apidocs.example.com などのサブドメインを入力した場合は、[DNS レコードの更新] セクションに CNAME が表示されます。例:

      タイプ データ エイリアス
      CNAME ghs.googlehosted.com apidocs
  6. [完了] をクリックします。

  7. ポータルにアクセスするには、カスタム ドメインのリンクをクリックします。DNS レコードの反映状況によっては、カスタム ドメインのリンクが有効になるまでに最大で 24 時間かかる場合があります。

ドメイン登録事業者を使用して DNS レコードを追加した後で初めて、Google によって SSL 証明書がプロビジョニングされます。それまでは、カスタム ドメインを使用してポータルにアクセスできません。これは http:// を使用しても変わりません。ただし、[エンドポイント] > [デベロッパー ポータル] ページに表示されるデフォルトの URL は引き続き使用できます。

DNS に追加する情報を確認する

ドメイン名登録業者に追加する必要がある(または追加済みの)情報を確認するには:

  1. Google Cloud コンソールで、[エンドポイント] > [デベロッパー ポータル] ページに移動します。

    Cloud Endpoints Portal に移動

  2. API を所有している Google Cloud プロジェクトを選択します。
  3. カスタム ドメインの横にある [DNS の詳細] をクリックします。

カスタム ドメインの削除

  1. Google Cloud Console で、プロジェクトの [エンドポイント] > [デベロッパー ポータル] ページに移動します。

    Cloud Endpoints Portal に移動

  2. カスタム ドメインの [DNS の詳細] の横にある [削除] をクリックします。
  3. 確認ダイアログで [削除] をクリックします。

トラブルシューティング

カスタム ドメインの追加が一般的なエラーで失敗する。このエラーの原因は複数考えられます。ポータルのデフォルト URL endpointsportal.YOUR_PROJECT_ID.cloud.goog が機能していることを確認してください。デフォルト URL が機能していない場合は、ポータルを削除してからエンドポイント API のポータルを作成するの手順に沿ってポータルを再作成します。

カスタム ドメインの追加が失敗したのに、メインページのテーブルにそのドメインがまだ表示されている。これは既知の問題です。この問題を解決するには、カスタム ドメインを削除してから再度追加します。

[DNS の詳細] をクリックすると空のテーブルが表示されて、追加するレコードがない。この問題は、カスタム ドメインの追加が失敗したにもかかわらず、テーブルに表示され続けている場合に起きることがあります。この問題を解決するには、カスタム ドメインを削除してから再度追加します。

カスタム ドメインのリンクが機能していない。ドメイン登録事業者を使用して DNS レコードが正しく追加されていることを確認する必要があります。カスタム ドメインが機能するまでに最大で 24 時間かかることがあります。

カスタム ドメインを追加する権限がない。少なくとも、プロジェクト閲覧者の役割に加え、プロジェクトに対する Endpoints Portal 管理者の役割が必要です。プロジェクトに対するプロジェクト編集者の役割にも、必要な権限が含まれています。詳細については、カスタム役割の作成と管理をご覧ください。

自分の App Engine アプリケーションで使用したのと同じドメイン名を再使用したい。特定のドメイン名は 1 つのウェブ アプリケーションに限り使用可能です。App Engine ウェブ アプリケーションとポータルに同じドメイン名を使用することはできません。一意のドメイン名を使用してください。

次のステップ

以下の内容について学習します。