python - 无法使用具有 BigQuery 作业用户角色的服务帐户连接到来自 python 的查询(在 IAM 中)
问题描述
云团队授予我一个具有 BigQuery 作业用户角色 (IAM) 的服务帐户 (SA),用于从 python 进行查询。但我有这个问题
403 请求失败:用户没有项目的“bigquery.readsessions.create”权限
但是这个 SA 是在 Java 中工作的。寻找解决这个问题的想法,谢谢^^
我的简单代码在这里:
import pandas as pd
import google.cloud.bigquery as gbq
gbq_client = gbq.Client.from_service_account_json('credentials/credentials_bigquery.json')
#function query
def query_job(client,query):
query_job = client.query(query) # Make an API request.
df_from_bq = query_job.to_dataframe()
return df_from_bq
#query
qr_user = """
SELECT user_id FROM `CUSTOMER_DATA_PLATFORM.CDP_TBL` LIMIT 1000
"""
user = query_job(gbq_client,qr_user)
解决方案
推荐阅读
- excel - 将功能添加到 Excel,而不是通过加载项
- c# - 如何使用 Hooks 唯一标识应用程序中的字段或控件?
- php - PHP数组与数组(二维数组?)到csv
- javascript - 如何在 ESLint 中使用平面嵌套三元组?
- android - ViewPager 图像视图在回收站视图中的随机项目位置显示 null
- ruby-on-rails - Rails 本地化:以扁平的非嵌套方式排列 i18n yml 文本有什么缺点吗?
- firebase - admin sdk 的 firebase 实时数据库规则
- vuetify.js - 深色主题不适用于所有子组件
- html - 从 CSS 关闭汉堡菜单
- php - php中多维数组的唯一数组