在 gcp 中限制用户对 VM 的访问

mo *_* mo 6 google-compute-engine google-cloud-platform google-iam google-cloud-iam

假设两个用户 A 和 B 拥有 GCP 项目的完全访问权限。用户 A 创建虚拟机。完成此操作后,用户 B 似乎可以登录 VM,并且还具有对 VM 的 sudo 访问权限。

我们使用了 enable-oslogin 元数据,但是我们遇到了用户 a 和 b 属于同一组的问题,有没有其他方法可以限制用户 B 的访问

luk*_*wid 5

根据文档,您有 2 个选项。

  1. 管理实例访问 使用操作系统登录,此功能可让您更精细地控制哪些用户可以连接到您的实例以及他们拥有的权限级别。如果您删除roles/compute.osLogin用户将无法访问项目中的任何 VM (docs)

  2. 要仅通过 SSH 授予用户对特定实例的访问权限,您可以按照以下步骤操作 ( docs ):

  • 将该用户添加到具有查看权限的项目团队
  • 让该用户使用 ssh-keygen 生成公共 SSH 密钥并提供该密钥
  • 转到 Cloud Console 的 Compute Engine 部分中的实例窗格,选择您要授予用户访问权限的实例
  • 单击“添加元数据”并键入“sshKeys”作为密钥和“:”,其中用户名是用户帐户中“@”之前的字符串,ssh 密钥是用户在步骤 2 中生成的密钥。