Roads API で API キーを使用する

Google Maps Platform サービスでは、適切な認証情報を提供している API 呼び出し以外を制限することで、不正使用を防止しています。これらの認証情報は API キーの形式になります。API キーとは、Google の請求先アカウントをプロジェクトや特定の API、SDK に関連付ける一意の英数字文字列です。

このガイドでは、Google Maps Platform 用の API キーを作成、制限、使用する方法について説明します。

始める前に

Roads API を使用するには、請求先アカウントが登録されたプロジェクトを用意し、Roads API を有効にする必要があります。詳細については、Cloud コンソールでのセットアップをご覧ください。

API キーの作成

API キーは、使用量を正確に集計して課金するため、プロジェクトに関連付けられたリクエストであることを認証する一意の識別子です。少なくとも 1 つの API キーをプロジェクトに関連付ける必要があります。

API キーを作成するには:

コンソール

  1. [Google Maps Platform] > [認証情報] ページに移動します。

    [認証情報] ページに移動

  2. [認証情報] ページで、[認証情報を作成] > [API キー] をクリックします。
    [API キーを作成しました] ダイアログで、新しく作成された API キーが表示されます。
  3. [閉じる] をクリックします。
    新しい API キーは、[認証情報] ページの [API キー] に一覧で表示されます。
    (本番環境で使用する前に必ず API キーを制限するようにしてください)

Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

詳しくは、Google Cloud SDKCloud SDK のインストール、および以下のコマンドをご覧ください。

API キーの制限

アプリケーションに必要な API しか使用しないよう、API キーの使用に制限をかけておくことを強くおすすめします。API キーに制限をかけることにより、不正なリクエストからアプリケーションを守り、セキュリティを強化できます。詳しくは、API の保護に関するベスト プラクティスをご覧ください。

API キーを制限する手順は次のとおりです。

コンソール

  1. [Google Maps Platform] > [認証情報] ページに移動します。

    [認証情報] ページに移動

  2. 制限を設定する API キーを選択します。選択した API キーのプロパティ ページが表示されます。
  3. [キーの制限] で、次の制限を設定します。
    • アプリケーションの制限:
      1. 指定したウェブサーバー IP アドレスのリストからのリクエストを受け入れるには、[アプリケーションの制限] のリストで [IP アドレス(ウェブサーバー、cron ジョブなど)] を選択します。IPv4 または IPv6 のアドレス、あるいは CIDR 表記のサブネットを、1 つまたは複数指定します。指定する IP アドレスは、Google Maps Platform のサーバーが観測するソースアドレスと一致している必要があります。ネットワーク アドレス変換(NAT)を使用している場合、これは通常、マシンの公開 IP アドレスに対応します。
    • API の制限:
      1. [キーを制限] をクリックします。
      2. [API を選択] プルダウンから [Roads API] を選択します。 Roads API がリストに表示されない場合は、この API を有効にする必要があります。
  4. 変更が完了したら、[保存] をクリックします。

Cloud SDK

既存のキーを一覧表示します。

gcloud services api-keys list --project="PROJECT"

既存のキーに対する既存の制限を削除します。

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

既存のキーに新しい制限を設定します。

gcloud alpha services api-keys update projects/PROJECT/locations/global/keys/KEY_ID \
    --api-target=service=roads.googleapis.com
    --allowed-ips="IP_ADDRESS"

詳しくは、Google Cloud SDKCloud SDK のインストール、および以下のコマンドをご覧ください。

リクエストに API キーを追加する

すべての Roads API リクエストに API キーを追加する必要があります。次の例では、YOUR_API_KEY を API キーに置き換えます。

https://roads.googleapis.com/v1/snapToRoads?path=-35.27801,149.12958|-35.28032,149.12907|-35.28099,149.12929|-35.28144,149.12984|-35.28194,149.13003|-35.28282,149.12956|-35.28302,149.12881|-35.28473,149.12836 &interpolate=true &key=YOUR_API_KEY

API キーを使用するリクエストには HTTPS が必要です。