只有提供正确身份验证凭据的用户才能调用 API,这样可防止 Google Maps Platform 产品遭到未经授权的使用。这些凭据采用 API 密钥的形式;API 密钥是具有唯一性的字母数字字符串,可将您的 Google 结算账号与您的项目以及特定 API 或 SDK 相关联。
本指南介绍了如何为 Google Maps Platform 创建、限制和使用 API 密钥。
准备工作
在开始使用 Geocoding API 之前,请确保您的项目已关联结算账号并且启用了 Geocoding API。如需了解详情,请参阅在 Cloud 控制台中进行设置。
创建 API 密钥
API 密钥是唯一标识符,用于对与您的项目相关联的请求进行身份验证,以便您使用相关产品和执行结算。您必须至少有一个与您项目相关联的 API 密钥。
如需创建 API 密钥,请执行以下操作:
控制台
-
前往 Google Maps Platform > 凭据页面。
-
在凭据页面上,依次点击创建凭据 > API 密钥。
已创建的 API 密钥对话框会显示您新创建的 API 密钥。 -
点击关闭。
新的 API 密钥即会列在凭据页面的 API 密钥下。
(在生产环境中使用 API 密钥之前,请务必对 API 密钥设置限制。)
Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
详细了解 Google Cloud SDK、Cloud SDK 安装和以下命令:
限制 API 密钥
Google 强烈建议您限制 API 密钥,仅将其用于您的应用所需要的 API。限制 API 密钥可防止您的应用收到无正当理由的请求,从而提高应用安全性。如需了解详情,请参阅 API 安全性最佳实践。
如需限制 API 密钥,请执行以下操作:
控制台
-
前往 Google Maps Platform > 凭据页面。
- 选择您要设置限制的 API 密钥。系统随即会显示 API 密钥属性页面。
- 在密钥限制下,设置以下限制:
- 应用限制:
- 若要接受来自您提供的一系列网络服务器 IP 地址的请求,请从应用限制列表中选择 IP 地址(网络服务器、Cron 作业等)。指定一个或多个 IPv4 或 IPv6 地址,或采用 CIDR 表示法的子网。IP 地址必须与 Google Maps Platform 服务器观测到的来源地址一致。如果您使用网络地址转换 (NAT),则该地址通常对应于您计算机的公共 IP 地址。
- API 限制:
- 点击限制密钥。
- 从选择 API 下拉列表中选择 Geocoding API。 如果 Geocoding API 未列出,您需要启用它。
- 点击保存以完成更改。
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=geocoding-backend.googleapis.com --allowed-ips="IP_ADDRESS"
详细了解 Google Cloud SDK、Cloud SDK 安装和以下命令:
向您的请求添加 API 密钥
您必须在每个 Geocoding API 请求中都添加一个 API 密钥。在以下示例中,将 YOUR_API_KEY
替换为您的 API 密钥。
https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY
对于使用 API 密钥的请求,必须采用 HTTPS 协议。