将 API 密钥与 Street View Static API 搭配使用

只有提供正确身份验证凭据的用户才能调用 API,这样可防止 Google Maps Platform 产品遭到未经授权的使用。这些凭据采用 API 密钥的形式;API 密钥是具有唯一性的字母数字字符串,可将您的 Google 结算账号与您的项目以及特定 API 或 SDK 相关联。

本指南介绍了如何为 Google Maps Platform 创建、限制和使用 API 密钥。

准备工作

在开始使用 Street View Static API 之前,请确保您的项目已关联结算帐号并且启用了 Street View Static API。如需了解详情,请参阅在 Cloud 控制台中进行设置

创建 API 密钥

API 密钥是唯一标识符,用于对与您的项目相关联的请求进行身份验证,以便您使用相关产品和执行结算。您必须至少有一个与您的项目相关联的 API 密钥。

如需创建 API 密钥,请执行以下操作:

控制台

  1. 前往 Google Maps Platform > 凭据页面。

    前往“凭据”页面

  2. 凭据页面上,依次点击创建凭据 > API 密钥
    已创建的 API 密钥对话框会显示您新创建的 API 密钥。
  3. 点击关闭
    新的 API 密钥即会列在凭据页面的 API 密钥下。
    (在生产环境中使用 API 密钥之前,请务必为 API 密钥设置限制。)

Cloud SDK

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

详细了解 Google Cloud SDKCloud SDK 安装和以下命令:

限制 API 密钥

Google 强烈建议您限制 API 密钥,仅将其用于您的应用所需要的 API。限制 API 密钥可防止您的应用收到无正当理由的请求,从而提高应用安全性。如需了解详情,请参阅 API 安全性最佳实践

除了限制您的 API 密钥之外,您还应签署此 API 的请求。如需了解详情,请参阅 API 安全性最佳实践

如需限制 API 密钥,请执行以下操作:

控制台

  1. 前往 Google Maps Platform > 凭据页面。

    前往“凭据”页面

  2. 选择您要设置限制的 API 密钥。系统随即会显示 API 密钥属性页面。
  3. 密钥限制下,设置以下限制:
    • 应用限制:
      1. 若要接受来自您提供的一系列网络服务器 IP 地址的请求,请从应用限制列表中选择 IP 地址(网络服务器、Cron 作业等)。指定一个或多个 IPv4 或 IPv6 地址或使用 CIDR 表示法的子网。IP 地址必须与 Google Maps Platform 服务器观测到的来源地址一致。如果您使用网络地址转换 (NAT),则这通常对应于您计算机的公共 IP 地址。
    • API 限制:
      1. 点击限制密钥
      2. 选择 API 下拉列表中选择 Street View Static API。如果 Street View Static API 未列出,您需要enable它。
  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/keys/KEY_ID" \
    --api-target="street-view-image-backend.googleapis.com"
    --allowed-ips="IP_ADDRESS"

详细了解 Google Cloud SDKCloud SDK 安装和以下命令:

向您的请求添加 API 密钥

您必须在每个 Street View Static API 请求中都添加一个 API 密钥。在以下示例中,将 YOUR_API_KEY 替换为您的 API 密钥。

https://maps.googleapis.com/maps/api/streetview?location=Z%C3%BCrich&size=400x400&key=YOUR_API_KEY

对于使用 API 密钥的请求,必须采用 HTTPS 协议。

后续步骤

Street View Static API 请求还应使用数字签名