Google bigquery 设置对BigQuery数据集具有写入权限的服务帐户
我找不到一种方法,使用Google Cloud SDK(Google bigquery 设置对BigQuery数据集具有写入权限的服务帐户,google-bigquery,google-cloud-platform,Google Bigquery,Google Cloud Platform,我找不到一种方法,使用Google Cloud SDK(gcloud或python在本例中)设置一个可以写入BigQuery数据集的服务帐户 调用bq insert…时,我得到以下错误: BigQuery error in insert operation: Access Denied: Dataset DATASET_NAME: The user service_account@PROJECT_ID.iam.gserviceaccount.com does not have bigqu
gcloud
或python
在本例中)设置一个可以写入BigQuery数据集的服务帐户
调用bq insert…
时,我得到以下错误:
BigQuery error in insert operation:
Access Denied:
Dataset DATASET_NAME: The user service_account@PROJECT_ID.iam.gserviceaccount.com
does not have bigquery.datasets.get permission for dataset DATASET_NAME.
而当我读到BQbigquery.datasets().get(…).execute()的元数据时
我得到以下信息-这意味着,即使所有者权限也不够
{
"kind": "bigquery#dataset",
"datasetReference": {
"projectId": "PROJECT_ID",
"datasetId": "DATASET_ID"
},
"creationTime": "...",
"access": [
{
"specialGroup": "projectWriters",
"role": "WRITER"
},
{
"role": "WRITER",
"userByEmail": "service_account@PROJECT_ID.iam.gserviceaccount.com"
},
{
"specialGroup": "projectOwners",
"role": "OWNER"
},
{
"role": "OWNER",
"userByEmail": "service_account@PROJECT_ID.iam.gserviceaccount.com"
},
{
"specialGroup": "projectReaders",
"role": "READER"
}
],
"etag": "...",
"lastModifiedTime": "1488658209437",
"id": "PROJECT_ID:DATASET_ID",
"selfLink": "https://www.googleapis.com/bigquery/v2/projects/PROJECT_ID/datasets/DATASET_ID"
}
检查长期服务帐户电子邮件地址是否没有输入错误,尝试重新创建可能是临时故障。当您查看控制台时,您为服务帐户分配了哪些IAM角色?@GrahamPolley显然,
gcloud auth activate service account
最近已更改,现在需要在位置0中提供的帐户,以及--密钥文件
-猜测这就是它不起作用的原因