所有 DFP API 调用均必须通过 OAuth2 授权。OAuth2 是一种开放式标准,用户可通过它向第三方应用授予权限,以便相应应用能够代表用户与网络服务交互。借助 OAuth2,您的 DFP API 客户端应用就能够访问用户的 DFP 广告管理系统(以下简称 DFP)帐号,而无需处理或存储用户的用户名或密码。
生成 OAuth2 凭据
要生成 OAuth2 凭据,请执行以下步骤。
1. 确定身份验证类型
请查看下方表格,了解最适合您的 DFP API 应用的身份验证类型。
选择您的 OAuth2 身份验证类型 | |
---|---|
服务帐号 |
如果您只需访问自己的 DFP 数据,请选择此选项。 了解详情。 |
网络应用 |
如果您想以授权您的应用访问其 DFP 数据的用户身份进行身份验证,请选择此选项。 了解详情。 |
2. 创建 OAuth2 凭据
确定身份验证类型之后,请点击下方的对应标签,然后按照相应说明生成 OAuth2 凭据:
- 打开 Google API 控制台凭据页面。
- 从项目下拉菜单中,选择创建新项目,输入项目名称并根据需要修改提供的项目 ID。点击创建。
- 在“凭据”页面上,选择创建凭据,然后选择服务帐号密钥。
- 选择新的服务帐号,然后选择JSON。
- 点击创建以下载包含私钥的文件。
- 打开 Google API 控制台凭据页面。
- 从项目下拉菜单中,选择创建新项目,输入项目名称(并根据需要修改提供的项目 ID),然后点击创建。
- 在“凭据”页面上,选择创建凭据,然后选择 OAuth 客户端 ID。
- 在“同意”屏幕上,系统可能会提示您设置产品名称;若如此,请点击配置同意屏幕,提供要求的信息,然后点击保存以返回到“凭据”屏幕。
- 选择网络应用作为应用类型。按照说明输入 JavaScript 来源和/或重定向 URI。
- 点击创建。
- 在随即显示的页面中,将客户端 ID 和客户端密钥复制到您的剪贴板,您在配置客户端库时需要用到这些信息。
3. 配置 DFP 广告联盟
如果您是第三方开发者,则可能需要将您的客户端设置为自动执行此步骤。
- 转到 DFP 广告联盟。
- 点击管理标签。
- 确保 API 访问权限已启用。
- 点击添加服务帐号用户按钮。
- 在表单中填写服务帐号电子邮件地址。您必须向服务帐号用户授予对实体的访问权限,就好像该服务帐号用户将会访问界面上的实体一样。
- 点击保存按钮。此时,系统应该会显示一条消息,确认您的服务帐号已添加。
- 转到“用户”标签,然后点击服务帐号过滤条件,查看现有的服务帐号用户。
- 转到 DFP 广告联盟。
- 点击管理标签。
- 确保 API 访问权限已启用。
4. 配置和使用客户端库
要在客户端库中使用这些凭据,请遵循下文中的相应指南:
如果您选择不使用我们的任何客户端库,则需要自行实现 OAuth2 服务帐号或网络应用流程。
后台揭秘
我们的客户端库会自动处理下述细节。如果您确实对后台情况感兴趣,请继续阅读。 此部分仅面向已熟悉 OAuth2 规范且知道如何结合使用 OAuth2 和 Google API 的高级用户。
HTTP 请求标头
向 DFP 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
参数中发送一个或多个值。
DFP 只有一个范围(如下所示)。授权应在产品内的用户级别执行。
范围 | 权限 |
---|---|
https://www.googleapis.com/auth/dfp |
在 DFP 上查看和管理您的广告系列。 |