Google cloud platform 谷歌云存储-如何限制对特定存储桶的访问

Google cloud platform 谷歌云存储-如何限制对特定存储桶的访问,google-cloud-platform,google-cloud-storage,google-oauth,Google Cloud Platform,Google Cloud Storage,Google Oauth,我想给一个应用程序一个合适的OAuth2令牌,让它访问我的一个Google存储桶 如果我理解正确,那么就没有办法将令牌限制在特定的bucket中 创建具有有限访问权限的令牌的最简单/推荐方法是什么?我想我可以为此创建一个全新的Google帐户,调整bucket的ACL以允许新用户访问,然后使用该用户创建OAuth令牌。但这似乎。。。笨拙且不可扩展 (如果有问题:应用程序正在使用,即它给我一个我必须访问和登录的Google URL)您可以创建一个服务帐户,访问权限仅限于所需的bucket。 使用B

我想给一个应用程序一个合适的OAuth2令牌,让它访问我的一个Google存储桶

如果我理解正确,那么就没有办法将令牌限制在特定的bucket中

创建具有有限访问权限的令牌的最简单/推荐方法是什么?我想我可以为此创建一个全新的Google帐户,调整bucket的ACL以允许新用户访问,然后使用该用户创建OAuth令牌。但这似乎。。。笨拙且不可扩展


(如果有问题:应用程序正在使用,即它给我一个我必须访问和登录的Google URL)

您可以创建一个服务帐户,访问权限仅限于所需的bucket。
使用Bucket ACL并将用户的电子邮件地址授予Bucket。用户的电子邮件地址必须是用户登录的Google帐户或G套件(到Google帐户)的一部分

下面的
gsutil
示例将授予
john。doe@example.com
在Bucket上写入权限
示例Bucket

gsutil acl ch -u john.doe@example.com:WRITE gs://example-bucket
文件:


没有其他用户,只有我想运行应用程序,而不让它完全访问所有存储桶。我的问题是,是否有比创建一个新的虚拟用户更优雅的方法。你是说-我想限制我的凭据,但只有在从设备X运行时才这样做?基本上,虽然我不会说“从设备X”而是“某些代码”-是为了防止bug还是因为我不完全信任它。对不起,如果这个问题不够清楚的话。这似乎是一个很有前途的帐户。但是,创建了服务帐户之后,我如何使用它来创建OAuth令牌?应用程序使用,因此它给了我一个必须登录的Google URL-但似乎没有办法指定服务帐户…我不认为GCP IAM服务帐户提供了限制对特定(命名)资源的访问的功能,例如在AWS权限的情况下