使用项目1的服务帐户Json密钥从项目2中的Python云函数访问项目1的BigQuery数据存储
我在GCP有两个不同的项目 我需要访问Project-1的BigQuery数据库。已创建所需的服务帐户Json密钥 在Project-2中编写了一个Python云函数。我需要访问Project-1的BigQuery数据存储。据我所知,我需要从服务帐户json密钥文件(从Project-1)检索凭据。已将服务帐户json密钥文件上传到Project-2的bucket存储中 我正在尝试从此Json密钥文件检索凭据。尝试了以下不同的方法:使用项目1的服务帐户Json密钥从项目2中的Python云函数访问项目1的BigQuery数据存储,json,google-bigquery,google-cloud-functions,credentials,Json,Google Bigquery,Google Cloud Functions,Credentials,我在GCP有两个不同的项目 我需要访问Project-1的BigQuery数据库。已创建所需的服务帐户Json密钥 在Project-2中编写了一个Python云函数。我需要访问Project-1的BigQuery数据存储。据我所知,我需要从服务帐户json密钥文件(从Project-1)检索凭据。已将服务帐户json密钥文件上传到Project-2的bucket存储中 我正在尝试从此Json密钥文件检索凭据。尝试了以下不同的方法: 凭据=服务\帐户。凭据。来自\服务\帐户\文件(文件名,作用域
凭据=服务\帐户。凭据。来自\服务\帐户\文件(文件名,作用域=“”) 或 client=bigquery.client.from\u service\u account\u json(文件名) 或 client=bigquery.client.from_service_account_文件(文件名) 或 凭据=服务帐户。凭据。来自服务帐户信息(服务帐户信息) 而我不断收到错误, [Errno 2]没有这样的文件或目录:filename 我尝试将文件名作为bucket Json文件的URL或LinkURL或Public URL 请告知我们如何从Project-2的云功能访问Project-1的BigQuery,我确实拥有Project-1的服务帐户Json密钥。
client = bigquery.Client(credentials=credentials,project=credentials.project_id,)
#client = bigquery.Client.from_service_account_json(filetest)
从项目2中的Python云函数使用项目1的服务帐户Json键,服务帐户具有类似用户帐户的邮件地址 因此,您可以向user@project2.iam.gserviceaccount.com关于项目1数据集/表格?
您真的需要在项目2上使用另一个服务帐户吗?服务帐户的邮件地址与用户帐户类似 因此,您可以向user@project2.iam.gserviceaccount.com关于项目1数据集/表格?
您真的需要另一个关于项目2的服务帐户吗?我需要首先澄清:
GOOGLE\u APPLICATIONS\u CREDENTIALS
环境变量我首先要澄清:
GOOGLE\u APPLICATIONS\u CREDENTIALS
环境变量谢谢你的帮助。我们能够使它工作 详情如下:
谢谢你的帮助。我们能够使它工作 详情如下:
无法在Project-2的服务帐户中添加对Project-1数据表的访问权限。所以这可能行不通。我们需要在Project-2的云函数中找到如何访问Project-1的任何服务帐户json密钥。请推荐。它对我有用。我在ProjectA有一个服务帐户。我在ProjectB中的数据集和表格。我还对另一个ProjectC运行查询。(用于向ProjectC计费查询成本)您不能在Project-2的服务帐户中添加对Project-1数据表的访问权限。所以这可能行不通。我们需要在Project-2的云函数中找到如何访问Project-1的任何服务帐户json密钥。请推荐。它对我有用。我在ProjectA有一个服务帐户。我在ProjectB中的数据集和表格。我还对另一个ProjectC运行查询。(对于ProjectC目的的账单查询成本)嘿@RakeshGupta,如果这对您有帮助,请回答您自己的问题并将其标记为已解决。这允许其他有相同问题的人直接看到解决方案,而不是在评论中。其他人也可以投票支持这个答案。。。谢谢嘿@RakeshGupta,如果这对你有帮助,那么请回答你自己的问题并标记它已解决。这允许其他有相同问题的人直接看到解决方案,而不是在评论中。其他人也可以投票支持这个答案。。。谢谢