凭据用于从 Google 的授权服务器获取访问令牌,以便您的应用可以调用 Google Workspace API。本指南介绍了如何选择和设置应用所需的凭据。
如需了解本页中所用术语的定义,请参阅身份验证和授权概览。
选择适合您的访问凭据
所需的凭据取决于应用的数据类型、平台和访问方法。可用的凭据类型有三种:
使用场景 | 身份验证方法 | 此身份验证方法简介 |
---|---|---|
在您的应用中匿名访问公开数据。 | API 密钥 | 在使用此身份验证方法之前,请确定您要使用的 API 支持 API 密钥。 |
访问用户数据,例如其电子邮件地址或年龄。 | OAuth 客户端 ID | 需要您的应用请求并征得用户同意。 |
访问您自己应用中的数据,或通过全网域授权代表 Google Workspace 或 Cloud Identity 用户访问资源。 | 服务账号 | 当应用以服务账号身份进行身份验证时,它可以访问该服务账号有权访问的所有资源。 |
API 密钥凭据
API 密钥是包含大小写字母、数字、下划线和连字符的长字符串,例如 AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe
。此身份验证方法用于匿名访问公开数据,例如使用“知道此链接的任何互联网用户”共享设置共享的 Google Workspace 文件。如需了解详情,请参阅使用 API 密钥。
如需创建 API 密钥,请执行以下操作:
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > API 和服务> 凭据。
- 依次点击创建凭据 > API 密钥。
- 此时将显示您的新 API 密钥。
- 点击“复制”图标 以复制要在应用代码中使用的 API 密钥。您也可以在项目凭据的“API 密钥”部分找到该 API 密钥。
- 点击限制密钥可更新高级设置并限制 API 密钥的使用。如需了解详情,请参阅应用 API 密钥限制。
OAuth 客户端 ID 凭据
如需对最终用户进行身份验证并访问应用中的用户数据,您需要创建一个或多个 OAuth 2.0 客户端 ID。客户端 ID 用于向 Google 的 OAuth 服务器标识单个应用。如果您的应用在多个平台上运行,您必须为每个平台分别创建客户端 ID。选择您的应用类型,即可查看有关如何创建 OAuth 客户端 ID 的具体说明:
Web 应用
- 在 Google Cloud 控制台中,依次点击“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > 网页应用。
- 在名称字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 添加与您的应用相关的已获授权 URI:
- 客户端应用 (JavaScript) - 在已获授权的 JavaScript 来源下,点击添加 URI。然后,输入要用于浏览器请求的 URI。这用于标识您的应用可以从哪些网域向 OAuth 2.0 服务器发送 API 请求。
- 服务器端应用(Java、Python 等) - 在已获授权的重定向 URI 下,点击添加 URI。然后,输入 OAuth 2.0 服务器可以向其发送响应的端点 URI。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中显示您的新客户端 ID 和客户端密钥。
记下客户端 ID。客户端密钥不适用于 Web 应用。
- 点击确定。新创建的凭据会显示在 OAuth 2.0 客户端 ID 下。
Android
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > Android。
- 在“名称”字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 在“Package name”字段中,输入
AndroidManifest.xml
文件中的软件包名称。 - 在“SHA-1 证书指纹”字段中,输入您生成的 SHA-1 证书指纹。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中显示您的新客户端 ID。
- 点击确定。新创建的凭据会显示在“OAuth 2.0 客户端 ID”下。
iOS
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > iOS。
- 在“名称”字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 在“Bundle ID”字段中,输入应用的
Info.plist
文件中列出的软件包标识符。 - 可选:如果您的应用出现在 Apple App Store 中,请输入 App Store ID。
- 可选:在“团队 ID”字段中,输入由 Apple 生成并分配给您的团队的唯一字符串(包含 10 个字符)。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中显示您的新客户端 ID 和客户端密钥。
- 点击确定。新创建的凭据会显示在“OAuth 2.0 客户端 ID”下。
Chrome 应用
- 在 Google Cloud 控制台中,依次点击“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > Chrome 应用。
- 在“名称”字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 在“应用 ID”字段中,输入由 32 个字符组成的应用的唯一 ID 字符串。您可以在应用的 Chrome 应用商店网址和 Chrome 应用商店开发者信息中心中找到此 ID 值。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中会显示您的新客户端 ID 和客户端密钥。
- 点击确定。新创建的凭据会显示在“OAuth 2.0 客户端 ID”下方。
桌面应用
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > 桌面应用。
- 在名称字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中显示您的新客户端 ID 和客户端密钥。
- 点击确定。新创建的凭据会显示在 OAuth 2.0 客户端 ID 下。
电视和受限输入设备
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > 电视和输入受限设备。
- 在“名称”字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中显示您的新客户端 ID 和客户端密钥。
- 点击确定。新创建的凭据会显示在“OAuth 2.0 客户端 ID”下。
通用 Windows 平台 (UWP)
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > API 和服务 > 凭据。
- 依次点击创建凭据 > OAuth 客户端 ID。
- 依次点击应用类型 > 通用 Windows 平台 (UWP)。
- 在“名称”字段中,输入凭据的名称。此名称仅在 Google Cloud 控制台中显示。
- 在“商店 ID”字段中,输入应用的 12 位字符的唯一 Microsoft 商店 ID 值。您可以在应用的 Microsoft Store 网址和 Partner Center 中找到此 ID。
- 点击创建。系统随即会显示“OAuth 客户端已创建”屏幕,其中会显示您的新客户端 ID 和客户端密钥。
- 点击确定。新创建的凭据会显示在“OAuth 2.0 客户端 ID”下。
服务账号凭据
服务账号是由应用(而非个人)使用的特殊账号。您可以使用服务账号通过机器人账号访问数据或执行操作,也可以代表 Google Workspace 或 Cloud Identity 用户访问数据。如需了解详情,请参阅了解服务账号。创建服务账号
Google Cloud 控制台
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > IAM 和管理> 服务账号。
- 点击创建服务账号。
- 填写服务账号详细信息,然后点击创建并继续。
- 可选:向您的服务账号分配角色,以授予对 Google Cloud 项目资源的访问权限。如需了解详情,请参阅授予、更改和撤消对资源的访问权限。
- 点击继续。
- 可选:输入可以使用此服务账号管理和执行操作的用户或群组。如需了解详情,请参阅管理服务账号模拟。
- 点击完成。记下该服务账号的电子邮件地址。
gcloud CLI
- 创建服务账号:
gcloud iam service-accounts create
SERVICE_ACCOUNT_NAME
\ --display-name="SERVICE_ACCOUNT_NAME
" - 可选:向您的服务账号分配角色,以授予对 Google Cloud 项目资源的访问权限。如需了解详情,请参阅授予、更改和撤消对资源的访问权限。
为服务账号分配角色
您必须通过超级用户账号向服务账号分配预构建角色或自定义角色。
在 Google 管理控制台中,依次点击“菜单”图标 >账号 > 管理员角色。
将光标指向要分配的角色,然后点击分配管理员角色。
点击分配服务账号。
输入服务账号的电子邮件地址。
依次点击添加 > 分配角色。
为服务账号创建凭据
您需要获取公钥/私钥对形式的凭据。您的代码会使用这些凭据来授权应用中的服务账号操作。如需获取服务账号的凭据,请执行以下操作:
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > IAM 和管理 > 服务账号。
- 选择您的服务账号。
- 依次点击密钥 > 添加密钥 > 创建新密钥。
- 选择 JSON,然后点击创建。
系统会生成新的公钥/私钥对,并将其作为新文件下载到您的计算机。将下载的 JSON 文件保存为工作目录中的
credentials.json
。此文件是此密钥的唯一副本。如需了解如何安全地存储密钥,请参阅管理服务账号密钥。 - 点击关闭。
可选:为服务账号设置全网域委托
如需代表 Google Workspace 组织中的用户调用 API,您的服务账号需要由超级用户账号在 Google Workspace 管理控制台中授予全网域授权。如需了解详情,请参阅向服务账号委派全网域授权。如需为服务账号设置全网域授权,请执行以下操作:
- 在 Google Cloud 控制台中,依次选择“菜单”图标 > IAM 和管理 > 服务账号。
- 选择您的服务账号。
- 点击显示高级设置。
- 在“全网域授权”下方,找到您的服务账号的“客户端 ID”。点击“复制”图标 以将客户端 ID 值复制到剪贴板。
如果您对相关 Google Workspace 账号拥有超级用户访问权限,请点击查看 Google Workspace 管理控制台,然后使用超级用户账号登录,继续执行以下步骤。
如果您没有对相关 Google Workspace 账号的超级用户访问权限,请与该账号的超级用户联系,并向其发送您的服务账号的客户 ID 和 OAuth 权限范围列表,以便他们在管理控制台中完成以下步骤。
- 在 Google 管理控制台中,依次点击“菜单”图标 > 安全性 > 访问权限和数据控件 > API 控件。
- 点击管理全网域授权。
- 点击新增。
- 在“客户端 ID”字段中,粘贴您之前复制的客户端 ID。
- 在“OAuth 范围”字段中,输入应用所需的范围列表(以英文逗号分隔)。这与您在配置 OAuth 权限请求页面时定义的一组范围相同。
- 点击授权。
下一步
您已准备好在 Google Workspace 上进行开发!查看 Google Workspace 开发者产品列表以及如何寻求帮助。