我尝试使用我在开发者控制台中创建的服务帐户在我的新GCE实例上执行gcloud init
。在开发者控制台中,我在权限下看到了一些服务帐户,我无法为其生成私钥文件;我还看到了我在服务帐户下创建的服务帐户,我可以获取私钥。
当我在GCE实例上gcloud init
时,在"选择要使用的凭据",我只在权限选项卡中看到服务帐户(我没有私有键)。我想使用我有私钥的服务帐户。
我现在可以使用我的个人帐户登录,但这不是可扩展的。有什么建议吗?
答案 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
菜单中。