Terraform谷歌云:在虚拟机上执行远程脚本



我正试图通过Terraform在谷歌虚拟机上执行脚本。

首先,我通过谷歌启动脚本进行了尝试。但是,由于元数据在谷歌控制台中是可见的(启动脚本算作元数据(,这意味着任何有读取权限的人都可以看到该脚本,这是不可接受的。

所以我尝试从存储帐户获取脚本。但为此,我需要将一个服务帐户附加到VM,以便VM有权访问存储帐户。现在,只要服务帐户连接到虚拟机,有权访问虚拟机的人也可以访问我的脚本。为了"分离"服务帐户,我必须停止VM。此外,如果我不想永久保留服务帐户的附件,我必须通过脚本附加服务帐户,该脚本需要再次停止和启动VM。这可能是不可能的,而且非常丑陋。

我不明白远程执行源是如何在GCPVM上工作的。因为我必须指定一个用户和一个用户密码来连接到VM,然后执行脚本。但是windows密码需要通过谷歌控制台手动设置,所以我现在无法指定这些内容。

那么,有人知道我如何在没有人可以通过Terraform访问我的脚本的情况下执行脚本吗?

问候:(和提前感谢

我最终只是运行了一个gcloud脚本,在Terraform应用完成后,我从VM中删除了元数据。在我的Gitlab管道中,我只是在"after_script"部分调用了该脚本。不幸的是,凭证在大约3分钟内可见。

最新更新