Google Maps Platform サービスでは、適切な認証情報を提供している API 呼び出し以外を制限することで、不正使用を防止しています。これらの認証情報は API キーの形式になります。API キーとは、Google の請求先アカウントをプロジェクトや特定の API、SDK に関連付ける一意の英数字文字列です。
Google Maps Platform 用の API キーを作成、制限、使用する方法について説明します。
始める前に
Directions API(従来版)のご利用にあたっては、請求先アカウントと Directions API(従来版)が有効なプロジェクトが必要です。詳しくは、Cloud コンソールでのセットアップをご覧ください。
API キーを作成する
API キーは、使用量と課金のためにプロジェクトに関連付けられたリクエストを認証する固有識別子です。少なくとも 1 つの API キーをプロジェクトに関連付ける必要があります。 新しいキーを作成する場合、または既存のキーに API や SDK を追加する場合は、次の手順に沿って操作します。
Console
-
[Google Maps Platform] > [キーと認証情報] ページに移動します。
- プロンプトが表示されたら、プロジェクトを選択します。
-
次のいずれかを行います。
-
新しい鍵を作成する:
- [認証情報を作成] > [API キー] をクリックします。
- [API キーの作成] パネルで、[API の制限の選択] リストを開きます。
- このキーに必要のない API をすべてクリアし、[Directions API] が選択されたままになっていることを確認します。
- [作成] をクリックします。パネルに新しい API キーが表示されます。
-
既存の鍵を使用する:
- 鍵の名前をクリックします。
- [API の制限を選択] リストで、[Directions API] を選択します。
- [保存] をクリックします。
ここで API を選択しても、API は有効になりません。API ライブラリ ページで Directions API が有効になっていることを確認します。
-
- 後で鍵文字列を表示するには、[鍵と認証情報] ページに移動し、鍵の [鍵を表示] をクリックします。
コンソールの表示がこれらの手順と異なる場合は、Google Cloud ドキュメントの API キーを作成すると API 制限を追加するをご覧ください。
gcloud
次のコマンドで、PROJECT_ID をプロジェクト ID に置き換えます。
-
新しい鍵を作成する: 次のコマンドを実行します。DISPLAY_NAME は鍵の名前に置き換えます。
gcloud services api-keys create \ --project="PROJECT_ID" \ --display-name="DISPLAY_NAME" \ --api-target=service=directions-backend.googleapis.com
詳しくは、Google Cloud SDK、Cloud SDK のインストール、および以下のコマンドをご覧ください。
-
既存の鍵を使用する: 次のコマンドを実行します。KEY_ID は鍵の ID に置き換えます。
--appendフラグは、キーですでに許可されている API を保持します。このフラグを指定しない場合、コマンドはそれらを置き換えます。gcloud services api-keys update KEY_ID \ --project="PROJECT_ID" \ --append \ --api-target=service=directions-backend.googleapis.com
詳しくは、Google Cloud SDK、Cloud SDK のインストール、および以下のコマンドをご覧ください。
鍵 ID は、鍵文字列や表示名ではありません。これを確認するには、
gcloud services api-keys list --project="PROJECT_ID"を実行します。ID はnameフィールドの最後の部分(projects/PROJECT_NUMBER/locations/global/keys/KEY_ID)です。
鍵文字列を表示するには、gcloud services api-keys get-key-string KEY_ID
--project="PROJECT_ID" を実行します。
API キーを制限する
アプリケーションに必要な API しか使用しないよう、API キーの使用に制限をかけておくことを強くおすすめします。API キーに制限をかけることにより、不正なリクエストからアプリケーションを守り、セキュリティを強化できます。制限のない API キーの不正使用によって発生した料金は、お客様の負担となります。詳しくは、API の保護に関するベスト プラクティスをご覧ください。
API キーを制限するには:
Console
-
[Google Maps Platform] > [キーと認証情報] ページに移動します。
- 制限を設定する API キーを選択します。選択した API キーのプロパティ ページが表示されます。
- [キーの制限] で、次の制限を設定します。
- アプリケーションの制限:
- 指定したウェブサーバー IP アドレスのリストからのリクエストを受け入れるには、[アプリケーションの制限] で [IP アドレス] を選択します。IPv4 または IPv6 のアドレス、あるいは CIDR 表記のサブネットを、1 つまたは複数指定します。指定する IP アドレスは、Google Maps Platform のサーバーが観測するソースアドレスと一致している必要があります。ネットワーク アドレス変換 (NAT)を使用している場合、このアドレスは通常、ご使用のマシンの公開 IP アドレスに対応します。
- API の制限:
- [API の制限を選択] で、[Directions API] が選択されていることを確認します。リストに表示されない場合は、有効にする必要があります。
- 変更が完了したら、[保存] をクリックします。
gcloud
以下のコマンドを実行します。KEY_ID は鍵の ID に、PROJECT_ID はプロジェクト ID に置き換えます。鍵 ID を確認するには、gcloud services api-keys list --project="PROJECT_ID" を実行します。ID は、name フィールドの最後の部分です。
gcloud services api-keys update KEY_ID \ --project="PROJECT_ID" \ --append \ --api-target=service=directions-backend.googleapis.com \ --allowed-ips="IP_ADDRESS"
詳しくは、Google Cloud SDK、Cloud SDK のインストール、および以下のコマンドをご覧ください。
リクエストに API キーを追加する
すべての Directions API(従来版)リクエストに API キーを追加する必要があります。次の例では、YOUR_API_KEY を API キーに置き換えます。
https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key=YOUR_API_KEY
API キーを使用するリクエストには HTTPS を使用する必要があります。