在Compute Engine实例上使用服务帐户

时间:2016-01-15 01:31:24

标签: google-compute-engine

我尝试使用我在开发者控制台中创建的服务帐户在我的新GCE实例上执行gcloud init。在开发者控制台中,我在权限下看到了一些服务帐户,我无法为其生成私钥文件;我还看到了我在服务帐户下创建的服务帐户,我可以获取私钥。

当我在GCE实例上gcloud init时,在"选择要使用的凭据",我只在权限选项卡中看到服务帐户(我没有私有键)。我想使用我有私钥的服务帐户。

我现在可以使用我的个人帐户登录,但这不是可扩展的。有什么建议吗?

2 个答案:

答案 0 :(得分:2)

您可以使用gcloud auth activate-service-account命令通过服务帐户的私钥获取凭据。有关更多信息和示例,请访问this link

答案 1 :(得分:0)

在进一步讨论之后阐述@Kamaran的答案。

基本解决方案是在GCE实例上启用服务帐户

首先使用gcloud compute copy-files <private json key file> <instance name>:remote/path/to/key将文件复制到远程实例。然后在远程上运行gcloud auth activate-service-account <service account address> --key-file remote/path/to/key命令。然后,新的服务帐户将显示在gcloud init菜单中。