只有提供适当身份验证凭据的用户可以调用 API,这样可防止 Google Maps Platform 产品遭受未经授权的使用。这些凭据采用 API 密钥的形式,API 密钥是具有唯一性的字母数字字符串,可将您的 Google 结算帐号与您的项目以及特定 API 或 SDK 相关联。
本指南介绍了如何为 Google Maps Platform 创建、限制和使用 API 密钥。
准备工作
在开始使用 Maps JavaScript API 之前,请确保您的项目已关联结算帐号并且启用了 Maps JavaScript API。如需了解详情,请参阅在 Cloud 控制台中进行设置。
创建 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 密钥属性页面。
- 在密钥限制下,设置以下限制:
- 应用限制:
- 若要接受来自您提供的一系列网站的请求,请从应用限制列表中选择 HTTP 引荐来源网址(网站)。
- 指定一个或多个引荐来源网站。可以使用通配符为所有子网域授权(例如,指定
*.google.com
则表示接受所有以.google.com
结尾的网站)。https://
和http://
应按原样指定。对于其他类型的引荐来源网址协议,则必须使用特殊表示法。例如,对于file:///path/to/
,应采用__file_url__//path/to/*
格式加以表示。启用引荐来源网址之后,请务必监控您的使用情况,确保与您的预期相符。支持以下引荐来源网址协议:about://, app://, applewebdata://, asset://, chrome://, content://, file://, ftp://, ionic://, local://, ms-appx://, ms-appx-web://, ms-local-stream://, prism://, qrc://, res://, saphtmlp://
。 - 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/keys/KEY_ID" \ --api_target="maps-backend.googleapis.com" --allowed-referrers="referer
详细了解 Google Cloud SDK、Cloud SDK 安装和以下命令:
向您的请求添加 API 密钥
您必须在每个 Maps JavaScript API 请求中添加 API 密钥。在下例中,需要将 YOUR_API_KEY
替换为您的 API 密钥。
<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"></script>
对于使用 API 密钥的请求,必须采用 HTTPS 协议。