Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 谷歌云数据融合的权限问题_Google Cloud Platform_Google Cloud Data Fusion_Cdap - Fatal编程技术网

Google cloud platform 谷歌云数据融合的权限问题

Google cloud platform 谷歌云数据融合的权限问题,google-cloud-platform,google-cloud-data-fusion,cdap,Google Cloud Platform,Google Cloud Data Fusion,Cdap,我按照中的说明进行操作,似乎一切正常,直到最后我尝试运行管道。按照说明为Google托管服务帐户设置云数据融合服务API权限。管道预览功能工作时没有任何问题 然而,当我部署并运行管道时,几分钟后它就会失败。状态从设置更改为运行后不久,管道将停止,并出现以下权限错误: com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden { "code" : 403,

我按照中的说明进行操作,似乎一切正常,直到最后我尝试运行管道。按照说明为Google托管服务帐户设置云数据融合服务API权限。管道预览功能工作时没有任何问题

然而,当我部署并运行管道时,几分钟后它就会失败。状态从设置更改为运行后不久,管道将停止,并出现以下权限错误:

   com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
    {
      "code" : 403,
      "errors" : [ {
        "domain" : "global",
        "message" : "xxxxxxxxxxx-compute@developer.gserviceaccount.com does not have storage.buckets.create access to project X.",
        "reason" : "forbidden"
      } ],
      "message" : "xxxxxxxxxxx-compute@developer.gserviceaccount.com does not have storage.buckets.create access to project X."
    }
XXXXXXXXXX-compute@developer.gserviceaccount.com是我的项目的默认计算引擎服务帐户

“ProjectX”不是我的,我不知道为什么管道启动代码试图在那里创建一个bucket,它在失败之前在我的项目中成功地创建了临时bucket(一个名为df xxx,一个名为dataproc xxx)


我用两个单独的帐户尝试了这个方法,但在两个地方都出现了相同的错误。我曾尝试向各种服务帐户添加存储/管理员角色,但没有成功,但那是在我意识到它试图访问完全不同的项目之前

创建实例后,您缺少设置权限的步骤。本页提供了授予您的服务帐户正确权限的说明

我相信我能够复制此说明。所发生的事情是,BigQuery源插件首先是一个临时工作的GCS bucket,用于将数据导出到其中,我怀疑它在默认情况下试图在Dataset项目ID中创建它,而不是在您自己的项目中创建它


作为一种解决方法,在您的帐户中创建一个GCS bucket,然后在管道的BigQuery源配置中,将“临时bucket Name”配置设置为“gs://”

我已经设置了权限,如开头一段所述,权限是通过云数据融合API服务代理角色设置的,我将该角色分配给DF实例的Google托管服务帐户。您为哪个服务帐户分配了该角色?