使用Deployment Manager进行BQ计划查询:“ P4服务帐户需要iam.serviceAccounts.getAccessToken权限”

时间:2019-09-25 05:27:38

标签: google-cloud-platform google-bigquery schedule data-transfer google-deployment-manager

我正在尝试创建用于大查询数据传输的Deployment Manager模板,以启动计划的查询。我已经为传输配置创建了类型提供程序,当我为预定查询调用类型提供程序时,出现以下错误: “ P4服务帐户需要iam.serviceAccounts.getAccessToken权限。”

但是,我已经通过“ gcloud project add-iam-policy-binding ..”授予了“服务帐户令牌创建者”权限。我还能如何解决这个问题?

类型提供者:

- name: custom-type-provider
  type: deploymentmanager.v2beta.typeProvider
  properties:
    descriptorUrl: "https://bigquerydatatransfer.googleapis.com/$discovery/rest?version=v1"
    options:
      inputMappings:
      - fieldName: Authorization
        location: HEADER
        value: >
          $.concat("Bearer ", $.googleOauth2AccessToken())

呼叫类型提供者:

- name: test
  type: project_id:custom-type-provider:projects.transferConfigs
  properties:
    parent: project/project_id
    ..
    ..

1 个答案:

答案 0 :(得分:0)

我认为您在计划查询上遇到了限制,您必须use user accounts instead of service accounts才能进行查询。

有一个feature request允许服务帐户代表此特定操作。