gpt4 book ai didi

google-cloud-platform - 使用 Deployment Manager 在 BigQuery 中创建 'external table' 时出现“403 Permission denied while getting Drive credentials”

转载 作者:行者123 更新时间:2023-12-04 13:29:31 25 4
gpt4 key购买 nike

重现步骤:

  • 在 Google 表格中创建工作表
  • 在 Google Cloud Platform 中启用 Deployment Manager 和 Google Drive API
  • 添加部署管理器服务帐户 view工作表上的权限
  • 使用部署管理器创建数据集
  • 使用部署管理器创建表,在 sourceUris 中引用外部表

  • 部分python模板:
    def GenerateConfig(context):
    name: str = context.env['name']
    dataset: str = context.properties['dataset']
    tables: [] = context.properties['tables']
    location: str = context.properties.get('location', 'EU')
    resources = [{
    'name': name,
    'type': 'gcp-types/bigquery-v2:datasets',
    'properties': {
    'datasetReference': {
    'datasetId': dataset,
    },
    'location': location
    },
    }]

    for t in tables:
    resources.append({
    'name': '{}-tbl'.format(t["name"]),
    'type': 'gcp-types/bigquery-v2:tables',
    'properties': {
    'datasetId': dataset,
    'tableReference': {
    'tableId': t["name"]
    },
    'externalDataConfiguration': {
    'sourceUris': ['https://docs.google.com/spreadsheets/d/123123123123123-123123123123/edit?usp=sharing'],
    'sourceFormat': 'GOOGLE_SHEETS',
    'autodetect': True,
    'googleSheetsOptions':
    {
    "skipLeadingRows": '1',
    }
    }
    },
    })
    return {'resources': resources}
    我找到了一些线索,例如 this ,但他们都引用使用“范围”来添加 https://www.googleapis.com/auth/drive .
    我不确定如何将范围添加到部署管理器请求,或者范围是如何工作的。
    任何帮助,将不胜感激。

    最佳答案

    是的,使用范围可以解决问题。但是,即使在添加范围之后,我也面临同样的错误。与 GCP 服务帐户共享 google 表格文档帮助我摆脱了这个错误。
    总结一下 - 使用范围并与您将用于查询表的 GCP 服务帐户共享文档。
    此外,本文档对 querying external tables 很有帮助。

    关于google-cloud-platform - 使用 Deployment Manager 在 BigQuery 中创建 'external table' 时出现“403 Permission denied while getting Drive credentials”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65893927/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com