Google Cloud Compute Viewer 允许 SSH,但它不应该

Google Cloud Compute Viewer allows to SSH while it should not

我正在尝试使用 GCloud IAM 权限在我们的 GCP 基础设施上设置每个实例级别的权限(例如,可以在机器 A 上使用 SSH,但不能在机器 B 上使用 SSH)。

但是,我遇到了一个奇怪的行为。

如果我将一个用户添加到只有 Compute Viewer 权限的 GCloud 项目,该用户将能够在 all [=] 中的 VM 设置上使用 SSH 12=]节。

这毫无意义,因为文档本身指出您不能使用 Compute Viewer 进行 SSH:https://cloud.google.com/compute/docs/access/

此外,当我尝试为每个特定实例设置权限时(通过进入 Compute Engine > VM Instances,选择特定实例并从权限选项卡添加权限),那些似乎有完全没有效果。

不确定我是否遗漏了什么:

您可以 manage SSH access 在实例级别使用 OS 登录。

Compute Viewer 访问权限不足以通过 SSH 连接到 VM 实例。

You need one of compute.instances.setMetadata, compute.projects.setCommonInstanceMetadata or compute.instances.osLogin (with OsLogin enabled) and iam.serviceAccounts.actAs.

我刚刚也测试了确认,收到了上面的错误。

由于 IAM 角色 Compute Viewer 不够,您可能已将其他一些 roles/permissions 分配给需要在您的项目中审查的用户。