概要
認証のセキュリティと信頼性を高めるため、Maps Platform クライアント ID は 2025 年 5 月 26 日をもって非推奨となり、2026 年 5 月 31 日以降は使用できなくなります。
クライアント ID の代わりに、API キーの認証情報を使用して Google Maps API サービス トラフィックを認証する必要があります。このガイドでは、クライアント ID から API キーに移行する方法について説明します。
方法は次のとおりです。
- 現在のクライアント ID の使用状況を確認する
- API キーを準備する
- 割り当て設定を確認する
- コードを更新する
- クライアント ID トラフィックをモニタリングする
- クライアント ID を一時停止する
現在のクライアント ID の使用状況を確認する
移行プロセスを開始する前に、次のリストを作成します。
- クライアント ID で使用している Maps Platform サービス。
- クライアント ID を使用しているアプリケーション、サイト、システム。
Google は、2025 年 5 月のクライアント ID のサポート終了について、影響を受けるお客様に通知メールを送信しました。この情報は通知メールでも確認できます。
Cloud コンソールの Google マップの指標ページで、クライアント ID の使用状況の最新ステータスを確認できます。
Maps Platform サービスの一覧:
- Cloud コンソールで [指標] ページを開きます。
- 次の設定で使用状況をフィルタします。
- 認証情報: 「project_number:<numerical identifier>" のみを選択します。
- 次のフィルタを設定します。
- グループ条件: API
アプリケーション、サイト、システムに関するヒント:
Cloud Console には、アプリケーション、サイト、システムの詳細は表示されません。ただし、クライアント ID トラフィックのソースに関するヒントはいくつかあります。手順は次のとおりです。
- Cloud コンソールで [指標] ページを開きます。
- プルダウンから Maps Platform サービスを選択します。
- 次の設定で使用状況をフィルタします。
- 認証情報: 「project_number:<numerical identifier>" のみを選択します。
- 次のフィルタを設定します。
- グループ条件: プラットフォーム、ドメイン
- トラフィックをチェックする必要がある Maps Platform サービスごとに、手順 2 から繰り返します。
API キーを準備する
すべてのクライアント ID は Google Cloud プロジェクトに関連付けられています。そのプロジェクトの API キーを使用すると、以前にクライアント ID でアクセスした機能と同じ機能にアクセスできます。割り当ての問題や機能の不足を回避するため、関連付けられたプロジェクトに移行することをおすすめします。
- クライアント ID がリンクされている Cloud プロジェクトを見つけます。
- Cloud プロジェクトが有効な請求先アカウントにリンクされていることを確認します。
- クライアント ID の移行用に新しい API キーを作成します。
- Cloud プロジェクトの既存の API キーを再利用できます。
- 同じ Cloud プロジェクトの複数の API キーを使用できます。たとえば、Maps Platform の各サービスのトラフィックを分離したり、異なるプラットフォーム(ブラウザ、モバイルアプリなど)からのトラフィックを分離したりできます。API キー管理に関するベスト プラクティスについては、セキュリティ ガイドをご覧ください。
API キーを保護する
API キーを不正アクセスから保護するため、API キーを安全に保管してください。
- API キーのアプリケーションの制限(ウェブサイト、IP アドレス、Android アプリ、iOS アプリなど)を設定します。
- API キーの API 制限を設定する。
詳しくは、Google Maps Platform のセキュリティに関するガイダンスをご覧ください。
Maps JavaScript API、Maps Static API、Street View Static API の場合、クライアント ID の信頼できるリファラーを API キーの制限に移行できます。信頼できる参照元のリストは Cloud コンソールで確認できます。
割り当て設定を確認する
Cloud プロジェクトに想定どおりの割り当て設定があることを確認します。これは、クライアント ID から Maps JavaScript API クライアントサイド サービスを呼び出す場合にのみ必要です。割り当て設定を確認、調整するには、Google マップの割り当てページにアクセスしてください。
Maps JavaScript API クライアントサイド サービスの割り当ての増加
Maps JavaScript API で次のサービスを使用している場合、API キーの移行後に割り当ての使用量が増加します。
現在の割り当て構成と現在の使用状況を確認し、それに応じて割り当ての上限を調整します。
- クライアント ID を使用して Maps JavaScript API クライアントサイド サービスを使用しているかどうかを確認します。
- Cloud コンソールで [指標] ページを開きます。
- 次の設定で使用状況をフィルタします。
- グループ条件: API メソッド
- 認証情報: 「project_number:<numerical identifier>" のみを選択します。
- [API メソッド別のトラフィック] グラフに、トラフィックとともにメソッド名のリストが表示されます。
API メソッド |
クライアントサイド サービス |
割り当てを調整するサービス |
google.routes.Directions.Javascript |
ルートサービス |
Directions API |
google.routes.DistanceMatrix.Javascript |
距離行列サービス |
Distance Matrix API |
google.maps.Elevation.Javascript |
高度サービス |
Elevation API |
google.places.Geocoding.Javascript |
ジオコーディング サービス |
Geocoding API |
google.places.*.Javascript(google.places.Geocoding.Javascript を除く) |
プレイス ライブラリ |
Places API |
- これらの API メソッドを使用しない場合は、クライアント ID トラフィックがすでにプロジェクトの割り当てを使用しているため、割り当て設定を気にする必要はありません。
- クライアント ID の割り当て使用量を見積もる
- 各サービスについて、1 秒あたりと 1 日あたりの両方の粒度を確認します。
- 1 秒あたりのグラフ: ピーク トラフィックを 60 倍して、1 分あたりの追加の割り当てニーズを計算します。
- 1 日あたりのグラフ: ピーク トラフィックは、1 日あたりの追加の割り当てニーズです。
- 対応する Maps Platform サービスの割り当てを調整します。
- 手順 1 で確認したメソッド名に基づいて、対応するサービスの割り当てを調整します。
コードを更新する
送信される GMP API 呼び出しで、認証情報を URL&client={value}
から URL&key={value}
に更新します。アプリで HTTP を使用して GMP サービスにアクセスしている場合は、HTTPS を使用するように更新します。
ウェブサービスの署名パラメータを削除
ウェブサービス API (*) の場合、API キーを使用してアクセスする場合、署名パラメータは必要ありません。API リクエストから署名パラメータのみを削除します。
- Directions API(以前のバージョン)
- Distance Matrix API(以前のバージョン)
- Geocoding API
- Elevation API
- Time Zone API
詳しくは、プレミアム プランの概要をご覧ください。
Imagery API の署名シークレット
Maps Static API と Street View Static API では、引き続き署名パラメータが必要です。テスト目的で署名のない少数のリクエストは受け入れられますが、本番環境でしきい値に達すると失敗します。署名シークレットを、クライアント ID 用から API キー用に置き換えます。同じ署名アルゴリズムを使用できますが、別の署名シークレットを使用する必要があります。詳細については、デジタル署名を使用するをご覧ください。
クライアント ID トラフィックをモニタリングする
デプロイ後、Cloud コンソール ダッシュボードを使用して、トラフィックが正常に移行されたことを確認します。クライアント ID のトラフィック数が減少し始めます。認証情報別にグループ化すると、ダッシュボードに「project_number:123456」形式で表示されます。
クライアント ID を一時停止する
デベロッパーは、移行後にクライアント ID を一時停止することを強くおすすめします。これは、意図しないトラフィックから認証情報を保護し、クライアント ID の残りの使用が重要ではなく(テスト、キャッシュ、ボットなど)、ビジネスに影響を与えることなくエラーを返すことができることを確認するためのものです。クライアント ID は一時停止できます。これは Cloud コンソールで行えます。詳しくは、プレミアム プランの認証の概要をご覧ください。
トラブルシューティング
リクエストが失敗したかどうかを確認するにはどうすればよいですか?
エラーの統計情報は、レスポンス コードのグラフで確認できます。
ApiNotActivatedMapError
または REQUEST_DENIED
エラー
Cloud プロジェクトでサービスを有効にしていない場合は、ApiNotActivatedMapError
または REQUEST_DENIED
エラーが表示されます。手順に沿ってサービスを有効にする。
エラー RefererNotAllowedMapError
件
参照元ドメインが API キーに追加されていない場合は、RefererNotAllowedMapError エラーが表示されます。[API キーを保護する] セクションを確認し、ドメインを API キーに追加します。
OverQuotaMapError
または OVER_QUERY_LIMIT
エラー
構成された割り当てがトラフィックをカバーするのに不十分な場合は、OverQuotaMapError
または OVER_QUERY_LIMIT
が表示されます。[割り当て設定を確認する] セクションを確認し、必要に応じて割り当てを調整します。
「この API へのリクエストは SSL 経由で行う必要があります」というエラー
次のエラー メッセージが表示された場合は、API リクエストを「http://」から「https://」に更新してください。
{
"error_message" : "Requests to this API must be over SSL. Load the API with
\"https://\" instead of \"http://\".",
"results" : [],
"status" : "REQUEST_DENIED"
}