本主题介绍了如何快速向 Google Cloud API 进行身份验证,以便进行测试。本主题不涉及如何向非 Google Cloud API(例如 Google Maps Platform API)进行身份验证。如需了解 Google Maps Platform API 和 SDK 的 API 密钥,请参阅 Google 地图文档。
创建服务帐号
Cloud Console
-
在 Cloud Console 中,转到创建服务帐号密钥页面。
转到“创建服务帐号密钥”页面 - 从服务帐号列表中,选择新的服务帐号。
- 在服务帐号名称字段中,输入一个名称。
从角色列表中,选择 Project > Owner。
- 点击创建。包含密钥的 JSON 文件就会下载到计算机。
命令行
您可以使用本地机器上的 Cloud SDK 或在 Cloud Shell 中运行以下命令。
-
创建服务帐号。将 NAME 替换为服务帐号的名称。
gcloud iam service-accounts create NAME
-
向服务帐号授予权限。将 PROJECT_ID 替换为您的项目 ID。
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:NAME@PROJECT_ID.iam.gserviceaccount.com" --role="roles/owner"
-
生成密钥文件。将 FILE_NAME 替换为密钥文件的名称。
gcloud iam service-accounts keys create FILE_NAME.json --iam-account=NAME@PROJECT_ID.iam.gserviceaccount.com
设置环境变量
如需将服务帐号与 Cloud SDK 结合使用,您需要设置代码运行的环境变量。
通过设置环境变量 GOOGLE_APPLICATION_CREDENTIALS
向应用代码提供身份验证凭据。
将 [PATH] 替换为包含您的服务帐号密钥的 JSON 文件的路径。此变量仅适用于当前的 Shell 会话,因此,如果您打开新的会话,请重新设置该变量。
Linux 或 macOS
export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
例如:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/my-key.json"
Windows
使用 PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
例如:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\my-key.json"
使用命令提示符:
set GOOGLE_APPLICATION_CREDENTIALS=[PATH]
通过设置环境变量,您可以独立于应用单独提供凭据,而无需在部署时更改应用代码。或者,您可以在代码中明确指定指向服务帐号密钥文件的路径。如需了解详情,请参阅以服务帐号身份进行身份验证。
核实身份验证
设置环境变量后,使用 Google Cloud 客户端库时,您无需在代码中明确指定您的凭据。客户端库可隐式确定您的凭据。因此,您可以先设置环境变量,然后运行客户端库代码(如下例所示),从而核实身份验证是否有效。如果请求成功,则身份验证有效。
C#
Go
Java
Node.js
PHP
Python
Ruby
后续步骤
- 了解如何向 Google Cloud API 验证身份
- 了解如何以最终用户身份进行身份验证
- 了解如何以服务帐号身份进行身份验证
- 了解如何使用 API 密钥
亲自尝试
如果您是 Google Cloud 新手,请创建一个帐号来评估我们的产品在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
免费开始使用