Google cloud platform 如何在从不同项目的机器映像创建实例时保留用户授权的\u密钥文件

Google cloud platform 如何在从不同项目的机器映像创建实例时保留用户授权的\u密钥文件,google-cloud-platform,Google Cloud Platform,我有两个GCP项目A和B,在B中有一个机器映像,机器映像是从一个原始实例创建的,该实例有一组用户(每个用户的主目录中都有~/.ssh/authorized_文件) 当我在B中使用这个机器映像在B中创建一个新实例时,所有用户的授权文件都得到了保留。但是,当我使用B中的机器映像在a中创建一个实例时,授权的_密钥在新实例中丢失,除了B的所有者me 我使用的命令是: gcloud beta计算实例创建新的\u实例--project=A--源计算机映像项目/B/全局/machineImages/machi

我有两个GCP项目A和B,在B中有一个机器映像,机器映像是从一个原始实例创建的,该实例有一组用户(每个用户的主目录中都有~/.ssh/authorized_文件)

当我在B中使用这个机器映像在B中创建一个新实例时,所有用户的授权文件都得到了保留。但是,当我使用B中的机器映像在a中创建一个实例时,授权的_密钥在新实例中丢失,除了B的所有者me

我使用的命令是:

gcloud beta计算实例创建新的\u实例--project=A--源计算机映像项目/B/全局/machineImages/machineImages\u映像\u名称--服务帐户A的\u服务\u帐户--网络=vpc\u网络\u在\u A中--子网=子网\u在\u A中

为了让用户的授权_文件从B交叉到A,我还需要在命令中添加什么

谢谢,
Philip

正如对该问题的评论,您需要使用的设置来实现在映像上保留SSH信息的用例。但请注意,这也会阻止实例中的项目范围的公共SSH密钥

只是在这篇文章中总结一下console的步骤

  • 转到虚拟机实例页面
  • 单击实例以转到其详细信息,然后单击编辑
  • 在SSH密钥下,单击显示和编辑。(本节将展开以显示所有实例级公共SSH密钥。)
  • 下一步是修改实例级公共SSH密钥: 将公共SSH密钥添加到文本框中,然后单击添加项
  • 添加关键点后,单击“保存”

  • 我知道我可以在上的元数据中添加用户的公钥,因此每当在中创建实例时,都会从元数据中创建这些用户的授权密钥文件。我只是担心这会给这些用户在A中提供太多的访问权限。理想情况下,我希望他们只能访问从机器映像创建的实例…您在B上创建映像之前是否尝试过使用?不,我以前没有这样做,我会尝试让此线程知道。谢谢你把它带给我。我测试了对实例使用实例级ssh密钥,然后从实例中创建机器映像。映像保留了用户ssh密钥,并且从映像创建的新实例具有用户密钥。谢谢Alex G.这就是我所做的,它按预期工作。谢谢@Alex