Google cloud storage 如何使用IAM将文件从google云实例上传到云存储?

Google cloud storage 如何使用IAM将文件从google云实例上传到云存储?,google-cloud-storage,google-compute-engine,devops,Google Cloud Storage,Google Compute Engine,Devops,我希望文件自动从云虚拟机上传到云存储。有没有办法在不将google access key ID放入实例的情况下执行此操作?有一种简单的方法可以处理GCE中的身份验证。GCE实例可以有一个关联的服务帐户,该帐户表示在该GCE实例上运行的程序。该服务帐户可以像任何其他帐户一样被授予写入GCS存储桶的权限 充当此服务帐户的凭据在已部署的GCE实例上很容易获得。最简单的方法是使用支持应用程序默认凭据的Google工具或库。如果您的身份验证代码完全是自定义的,则可以直接从URL“”检索该服务帐户的访问令牌

我希望文件自动从云虚拟机上传到云存储。有没有办法在不将google access key ID放入实例的情况下执行此操作?

有一种简单的方法可以处理GCE中的身份验证。GCE实例可以有一个关联的服务帐户,该帐户表示在该GCE实例上运行的程序。该服务帐户可以像任何其他帐户一样被授予写入GCS存储桶的权限

充当此服务帐户的凭据在已部署的GCE实例上很容易获得。最简单的方法是使用支持应用程序默认凭据的Google工具或库。如果您的身份验证代码完全是自定义的,则可以直接从URL“”检索该服务帐户的访问令牌(如果这样做,还必须包含标题“Metadata Flavor:Google”)

GCS命令行实用程序gsutil预先安装在GCE实例上,它可以使用应用程序默认凭据。如果您从脚本或shell调用它,它会将文件上载到云存储,而无需进一步配置

让服务帐户与地面军事系统协同工作有一个重要技巧。GCE要求您指定服务帐户的作用域,默认情况下,GCS不包括在这些作用域中,这意味着服务帐户最初不会与GCS一起工作。您需要将GCS添加到允许的作用域中,然后重新启动实例

有关为GCE实例配置服务帐户的文档如下:

有关如何使用应用程序默认凭据的文档如下: