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
Python 2.7 使用python在Google云中创建一个新项目,而不使用服务帐户凭据_Python 2.7_Google Cloud Platform_Google Oauth_Google Cloud Python - Fatal编程技术网

Python 2.7 使用python在Google云中创建一个新项目,而不使用服务帐户凭据

Python 2.7 使用python在Google云中创建一个新项目,而不使用服务帐户凭据,python-2.7,google-cloud-platform,google-oauth,google-cloud-python,Python 2.7,Google Cloud Platform,Google Oauth,Google Cloud Python,我的目标是做一个pythonic自动谷歌云项目经理。只是测试了一堆张量流之类的模型。即使我可以完全访问项目内的培训、部署和测试模型,我也不能推销任何新项目,因为我通过以下方式通过服务帐户进行了身份验证: google.oauth2.service_account.Credentials.from_service_account_file("thisisakey.json") 但据我所知,服务帐户是项目绑定的,所以用它创建新项目会产生错误是完全正确的。事实上: googleapiclient.d

我的目标是做一个pythonic自动谷歌云项目经理。只是测试了一堆张量流之类的模型。即使我可以完全访问项目内的培训、部署和测试模型,我也不能推销任何新项目,因为我通过以下方式通过服务帐户进行了身份验证:

google.oauth2.service_account.Credentials.from_service_account_file("thisisakey.json")
但据我所知,服务帐户是项目绑定的,所以用它创建新项目会产生错误是完全正确的。事实上:

googleapiclient.discovery.build("cloudresourcemanager", "v1", cache_discovery=False)
Falis与:

Service accounts cannot create project without a parent.
因此,创建/查找此项目的“父项”或登录更“强大”的帐户都可以解决此问题。但我想不出来。是否有其他凭据类型可下载并嵌入到python中?我可以从python创建一个项目吗?我检查过的所有内容都至少有2年的历史了,而且似乎已经非常过时了(当时项目只是不可能通过API创建)

更新: 我曾尝试在项目主体上,在我工作的公司创建的组织上,使用“父”标志创建一个项目。即使此服务帐户具有“所有者”和“组织管理员”角色,创建请求也会失败,原因是:

 Encountered 403 Forbidden with reason "forbidden"
 User is not authorized.

因此,问题依然存在。

您可以为服务帐户分配权限,以便在谷歌云中执行任何操作。你击中了少数几个你不能击中的球中的一个

问题是您的项目不是
组织的一部分(您没有父项)。您的解决方案是通过Google云控制台设置组织或创建项目。注意:我不建议通过软件创建项目。为了做任何有用的事情,您还需要设置账单

谷歌云有两种类型的凭据:用户凭据和服务帐户凭据。不能将用户帐户凭据嵌入到应用程序中。用户帐户凭据是使用OAuth 2.0作为登录/身份验证过程的一部分以交互方式创建的

还有其他类型的云服务访问,如API密钥,但这些不适用于您的问题


非常感谢,如果我设置了一个组织,通过gcloud shell激活API,并按照中的说明设置账单:它能工作吗?是的,除了启用组织后,在
组织
级别还需要更多的权限集。