设置 API 访问权限

以下说明介绍了如何通过 SDK 或 REST 设置对 Data Manager API 的访问权限。

前提条件

在使用 Data API 之前,请确保您已满足以下条件:

  1. Google Cloud 项目。 您可以使用现有项目,也可以专门为 Data Manager API 创建一个新项目。

  2. 在您的 Google Cloud 项目中拥有 serviceusage.services.enable 权限或拥有包含该权限的 Google 账号。例如,roles/ownerroles/serviceusage.serviceUsageAdmin 都包含 serviceusage.services.enable 权限。如需查看您的权限,请参阅查看当前访问权限

  3. Google Cloud CLI 已安装

启用 API

如果您尚未启用 Data Manager API,请点击启用 Data Manager API,或按照说明手动执行此步骤。

启用 Data Manager API

如果您找不到 Data Manager API 或启用 Data Manager API 失败,请验证您的 Google 账号是否满足前提条件

设置身份验证

除了 API 密钥之外,您还可以使用 Google 提供的任何身份验证方法。我们建议您查看为您的使用场景选择合适的身份验证方法,以确定哪种方法适合您的使用场景。

两种常见的身份验证方法是用户账号服务账号

  • 用户账号:代表直接与 Google API 和服务进行交互的人员。
  • 服务账号:代表应用(而非用户)作为用户。它们可让您的应用管理身份验证和授权。例如,如果应用需要访问 Google Cloud 资源。

您的集成可以使用应用默认凭证 (ADC) 自动从环境中查找凭证,这样您就不必更改客户端代码来进行身份验证。

选择用户账号服务账号以设置 ADC:

用户账号

以下是使用用户账号凭据进行身份验证的步骤:

  1. 为您的项目配置 Google Auth Platform 设置。

    1. 在 Google Cloud 控制台中打开品牌推广页面

    2. 选择您的项目。

    3. 填写表单,然后点击创建

  2. 由于 Data Manager API 范围属于敏感范围,因此需要执行以下步骤:

    1. 前往项目的数据访问权限设置。

    2. 点击添加或移除范围

    3. 在权限范围列表中,勾选 Data Manager API 旁边的复选框,然后点击更新

    4. 点击保存

    5. 前往 Google Cloud 控制台中的受众群体,然后更新发布状态用户类型。如需详细了解这些设置,请参阅管理应用受众群体

  3. 点击创建 OAuth2 客户端以在项目中创建 OAuth2 客户端,或按照说明创建桌面 OAuth2 客户端。如果您已有要用于 Data Manager API 的桌面 OAuth2 客户端,则可以跳过此步骤。

    如果您点击创建 OAuth2 客户端,请在系统提示配置 OAuth 客户端时选择桌面应用,以便在后续步骤中使用该客户端。

    创建 OAuth2 客户端

    在最后一步中,点击 DOWNLOAD CLIENT CONFIGURATION,并记下您选择的下载位置。

  4. 运行以下命令以生成本地 ADC 文件。此命令会启动一个 Web 流程,提示您登录与 API 搭配使用的 Google 账号。

    PATH_TO_CLIENT_JSON 替换为您下载的 JSON 文件的名称。

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file="PATH_TO_CLIENT_JSON"
    

    如果您想为 Data Manager API 和 Google Ads API 使用相同的凭据,请在 --scopes 列表中添加 Google Ads API 范围:

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file="PATH_TO_CLIENT_JSON"
    

    如果您想为 Data Manager API 和 Display & Video 360 API 使用相同的凭据,请在 --scopes 列表中添加 Display & Video 360 API 范围:

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/display-video,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file="PATH_TO_CLIENT_JSON"
    
  5. 使用以下命令确认凭据是否已正确设置。 如果成功,该命令会在控制台中输出访问令牌。

    gcloud auth application-default print-access-token
    

服务账号

以下是使用服务账号模拟进行身份验证的步骤。这些步骤使用模拟而非服务账号密钥,因为如果未谨慎管理,服务账号密钥可能会带来安全风险

  1. 点击下方的创建服务账号按钮,或按照说明选择或创建服务账号。

    创建服务账号
  2. 向服务账号授予 Service Usage Consumer IAM 角色 (roles/serviceusage.serviceUsageConsumer),该角色包含 serviceusage.services.use 权限,可让服务账号为项目发送 API 请求。

    gcloud projects add-iam-policy-binding PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/serviceusage.serviceUsageConsumer"
    
  3. 为服务账号授予您的 Google 账号 Service Account Token Creator IAM 角色 (roles/iam.serviceAccountTokenCreator)。

    gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_EMAIL \
      --member="user:USER_EMAIL" \
      --role="roles/iam.serviceAccountTokenCreator"
    
  4. 运行以下命令来配置 ADC:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/cloud-platform"
    

    如果您想为 Data Manager API 和 Google Ads API 使用相同的凭据,请在 --scopes 列表中添加 Google Ads API 范围:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform"
    

    如果您想为 Data Manager API 和 Display & Video 360 API 使用相同的凭据,请在 --scopes 列表中添加 Display & Video 360 API 范围:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/display-video,https://www.googleapis.com/auth/cloud-platform"
    

    当系统提示您登录时,请使用具有 Service Account Token Creator 角色的 Google 账号登录。

  5. 使用以下命令确认凭据是否已正确设置。如果成功,该命令会将访问令牌输出到控制台。

    gcloud auth application-default print-access-token --scopes="https://www.googleapis.com/auth/datamanager"
    

如需详细了解应用的身份验证和凭据,请参阅 Google 的身份验证方法应用默认凭证的工作原理

设置账号访问权限

用户账号

授予与用户关联的电子邮件地址对 Destination 的访问权限。

  • 如果使用的是 Google Ads 账号,请按照说明将用户的电子邮件地址添加到 Google Ads 账号或父级 Google Ads 经理账号。
  • 如果使用 Display & Video 360 账号,请按照说明将用户的电子邮件地址添加到该账号中。
  • 如果使用的是 Google Analytics 媒体资源,请按照相关说明将用户的电子邮件地址添加到相应账号。
  • 如果使用数据合作伙伴账号(通过广告客户账号中的合作伙伴链接访问 Destination),请按照相关说明将用户的电子邮件地址添加到数据合作伙伴账号。

服务账号

向与您的服务账号相关联的电子邮件地址授予对 Destination 的访问权限。

  • 如果使用 Google Ads 账号,请完成账号访问权限设置,将服务账号添加到 Google Ads 账号或父 Google Ads 经理账号。
  • 如果使用 Display & Video 360 账号,请按照说明创建与服务账号相关联的 Display & Video 360 用户。
  • 如果使用的是 Google Analytics 媒体资源,请按照相关说明将用户的电子邮件地址添加到相应账号。
  • 如果使用数据合作伙伴账号(通过广告客户账号中的合作伙伴链接访问 Destination)访问,请在数据合作伙伴账号中完成账号访问权限设置,以添加服务账号并设置其访问权限级别。

后续步骤

安装客户端库并运行代码示例,以尝试您的第一个 Data Manager API 请求。