我希望将Google Cloud IAM(身份访问管理)系统用于新的Google App Engine项目 . (虽然's not necessary to know, the front-end will be an angular JS, and the backend in Java.) However, once the user logs into my app using his or her browser and is then authenticated via Google Cloud IAM, I need to know whether it'可以将这个" authenticated credential"传递给Google计算VM . 如果是这样,怎么样?需要通过这个"authenticated credential"的原因是我希望在Google计算VM上使用gsutil(或类似)功能而我想要使用相同的用户名来确保安全配置文件正确运行 . (具体来说,我打算使用gsutil与Google Cloud 存储通信,但我打算从Windows Server计算引擎VM执行此操作 . )

我一直在阅读谷歌计算机虚拟机和谷歌 Cloud IAM,他们都谈论能够通过“服务帐户”令牌,但没有提到如何传递“经过身份验证的用户”凭据,以便gsutil可以访问Windows VM上的Google Cloud 存储的命令可以使用此经过身份验证的用户 . (我想避免让用户对我的应用程序以及在计算引擎Windows VM中运行的gsutil程序进行身份验证 . )

这可能吗?如果没有,任何建议/解决方法?

我有一个想法,虽然很丑,但如下所示:每次请求Windows计算引擎VM时,我们都会动态创建一个新的Google服务帐户,该帐户具有与登录的IAM身份验证用户相同的权限 . 然后,我们将使用Windows计算VM中的Google服务帐户与Google Cloud 存储联系 . 这解决了确保传达相同权限的问题,尽管它创建了一个稍微不同的问题,因为为访问该文件而生成的所有日志都将使用此虚拟服务帐户而不是真实用户名 .