Airflow iam.gserviceaccount.com没有storage.Bucket.get访问权限

Airflow iam.gserviceaccount.com没有storage.Bucket.get访问权限,airflow,google-authentication,Airflow,Google Authentication,我正在尝试使用DAG任务将文件存储到GCS中。 我已在airflow connections页面的“keyfile json”字段中指定了我的服务帐户信息。但是,在运行dag时,即使GCP服务帐户具有“存储对象管理员”角色,我仍收到一个权限错误: 错误-403获取:airflow@xstack-developers-237307.iam.gserviceaccount.com没有storage.Bucket.get访问weather_api的权限。 回溯(最近一次呼叫最后一次): 文件“/Use

我正在尝试使用DAG任务将文件存储到GCS中。 我已在airflow connections页面的“keyfile json”字段中指定了我的服务帐户信息。但是,在运行dag时,即使GCP服务帐户具有“存储对象管理员”角色,我仍收到一个权限错误:

错误-403获取:airflow@xstack-developers-237307.iam.gserviceaccount.com没有storage.Bucket.get访问weather_api的权限。 回溯(最近一次呼叫最后一次): 文件“/Users/bilguun/env/lib/python3.7/site packages/afflow/models/taskinstance.py”,第922行,在原始任务中 结果=任务\复制.执行(上下文=上下文) 文件“/Users/bilguun/env/lib/python3.7/site packages/afflow/operators/python_operator.py”,执行中的第113行 return\u value=self.execute\u callable() 文件“/Users/bilguun/env/lib/python3.7/site packages/afflow/operators/python\u operator.py”,第118行,在execute\u callable中 返回self.python_可调用(*self.op_参数,**self.op_参数) 文件“/Users/bilguun/afflow/dags/dag_1.py”,第44行,在forecast_to_gcs中 schemas=json.load(gcs_hook.download(gcs_bucket,'config/schema.json')) 文件“/Users/bilguun/env/lib/python3.7/site-packages/afflow/contrib/hooks/gcs_-hook.py”,第165行,下载 bucket=client.get_bucket(bucket) 文件“/Users/bilguun/env/lib/python3.7/site packages/google/cloud/storage/client.py”,第278行,在get_bucket中 bucket.reload(客户机=self) 文件“/Users/bilguun/env/lib/python3.7/site packages/google/cloud/storage/_helpers.py”,第130行,重新加载 _目标对象=自身, api_请求中的文件“/Users/bilguun/env/lib/python3.7/site packages/google/cloud/_http.py”,第393行 引发异常。从\u http\u响应(响应)

我多次检查我的服务帐户的角色,它显示:“存储对象管理员”


是否有人曾经遇到过这个问题?

您似乎正在使用python\u运算符。您确定使用了正确的连接吗?@ryanthcoder我认为上述问题只是因为我的帐户没有访问存储桶的适当权限(正如错误消息中明确提到的那样)。您能够使用该服务帐户使用gsutil访问您的GCS对象吗?@ryanthcoder是,没有问题。尝试将此“roles/storage.legacyBucketReader”分配给您的服务帐户。似乎您正在使用python_运算符。您确定使用了正确的连接吗?@ryanthcoder我认为上述问题只是因为我的帐户没有访问存储桶的适当权限(正如错误消息中明确提到的那样)。您能够使用该服务帐户使用gsutil访问您的GCS对象吗?@ryanthcoder是,没有问题。请尝试将此“roles/storage.legacyBucketReader”提供给您的服务帐户。