所有 Google Ad Manager API 调用都必须通过 OAuth2 授权。OAuth2 是一种开放式标准,用户可通过它向第三方应用授予权限,以便应用能够代表用户与网络服务进行交互。借助 OAuth2,您的 Ad Manager API 客户端应用就能够访问用户的 Ad Manager 帐号,而无需处理或存储用户的用户名或密码。
生成 OAuth2 凭据
请按照以下步骤生成 OAuth2 凭据。
1. 确定您的身份验证类型
请查看下表,了解最适合您的 Ad Manager API 应用的身份验证类型:
选择您的 OAuth2 身份验证类型 | |
---|---|
服务账号 |
如果您只需访问自己的 Ad Manager 数据,请选择此选项。 了解详情。 |
Web 应用 |
如果您想以任何授权您的应用访问其 Ad Manager 数据的用户身份进行身份验证,请选择此选项。 了解详情。 |
2. 创建 OAuth2 凭据
确定身份验证类型后,请点击下面的相应标签页,然后按照说明生成 OAuth2 凭据:
- 打开 Google API 控制台“凭据”页面。
- 从项目下拉菜单中,选择创建新项目,输入项目名称,还可以根据需要修改提供的项目 ID。点击创建。
- 在“凭据”页面上,选择创建凭据,然后选择服务帐号密钥。
- 选择新的服务帐号,然后选择 JSON。
- 点击创建以下载包含私钥的文件。
- 打开 Google API 控制台“凭据”页面。
- 从项目下拉菜单中,选择创建新项目,输入项目名称(并根据需要修改提供的项目 ID),然后点击创建。
- 在“凭据”页面上,选择创建凭据,然后选择 OAuth 客户端 ID。
- 在“同意屏幕”页面上,系统可能会提示您设置产品名称;若如此,请点击配置同意屏幕,提供要求的信息,然后点击保存以返回到“凭据”页面。
- 选择 Web 应用作为应用类型。按照说明输入 JavaScript 来源和/或重定向 URI。
- 点击创建。
- 在随即显示的页面上,将客户端 ID 和客户端密钥复制到剪贴板,您在配置客户端库时需要用到这些信息。
3. 配置 Ad Manager 广告资源网
如果您是第三方开发者,则可能需要让您的客户端为您执行此步骤。
- 转到您的 Ad Manager 广告资源网。
- 点击管理标签。
- 确保已启用 API 访问权限。
- 点击添加服务帐号用户按钮。
- 在表单中填写服务帐号电子邮件地址。必须授予服务帐号用户访问这些实体的权限,就像该服务帐号用户可以访问界面中的实体一样。
- 点击保存按钮。系统会显示一条消息,确认您的服务帐号已添加。
- 转到“用户”标签页,然后点击服务帐号过滤条件,查看现有服务帐号用户。
- 转到您的 Ad Manager 广告资源网。
- 点击管理标签。
- 确保已启用 API 访问权限。
4. 配置和使用客户端库
请按照下面的相应指南在客户端库中使用这些凭据:
Java
.NET
Python
PHP
Ruby
如果您选择不使用我们的任何客户端库,则需要自行实现 OAuth2 服务帐号或 Web 应用流程。
幕后花絮
我们的客户端库会自动处理下述细节,因此,只有在您对后台发生的情况感兴趣时,才需要继续阅读。本部分面向已熟悉 OAuth2 规范并且了解如何结合使用 OAuth2 和 Google API 的高级用户。
HTTP 请求标头
向 Ad Manager API 发出的每个请求中的 HTTP 标头都必须包含以下形式的访问令牌:
Authorization: Bearer ACCESS_TOKEN
例如:
POST … HTTP/1.1 Host: … Authorization: Bearer 1/fFAGRNJru1FTz70BzhT3Zg Content-Type: text/xml;charset=UTF-8 Content-Length: … <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope"> … </soap:Envelope>
范围
一个访问令牌可授予对多个 API 的不同级别的访问权限。一个名为 scope
的可变参数用于控制访问令牌允许的资源和操作集。在访问令牌请求期间,您的应用会在 scope
参数中发送一个或多个值。
Ad Manager 只有一个范围(如下所示)。授权应在产品内的用户级别执行。
范围 | 权限 |
---|---|
https://www.googleapis.com/auth/dfp |
在 Ad Manager 上查看和管理您的广告系列。 |