对于添加的项目编辑器/查看者,项目未出现在 Google Cloud Console /“gcloud 项目列表”中

Rub*_*ies 5 google-cloud-console google-cloud-platform gcloud

将我组织中的其他用户添加为项目编辑者和查看者后,项目不会显示在其 Google Cloud Console 项目列表中,也不会在gcloud projects list.

但是,如果我给他们直接指向项目内某些资源的链接,他们就可以很好地导航到该资源,
并且他们还可以使用类似于设置新项目的命令gcloud container clusters list--project=查看项目内的资源。

gcloud projects list( https://cloud.google.com/resource-manager/docs/creating-managing-projects#listing_projects )的文档指定它应该列出您拥有的所有项目resourcemanager.projects.list(项目查看器和编辑器均授予)或任何您所拥有的父母下的孩子resourcemanager.projects.list
所以也许如果我resourcemanager.projects.list在组织级别授予它会修复它,但我真的不想授予用户如此广泛的访问权限......

Div*_*dav 1

正如约翰·汉利所说:

为了让用户列出组织中的项目,他们需要在组织或文件夹级别使用 resourcesmanager.projects.list。如果用户有权访问项目,则允许他们列出项目应该不是问题,除非泄露项目名称项目是不想要的。在这种情况下,只需向每个人提供项目 ID,他们就可以手动使用该 ID 来访问资源。

注意:级别(项目、文件夹、组织)决定用户可以访问的内容。您可以创建文件夹、在文件夹下移动项目并允许用户仅列出其文件夹中的项目

有关更多信息,您可以参考与类似问题相关的 Serverfault 答案和文档 ,其中很好地解释了文件夹的创建和管理。

以下是复制方法:

  1. 作为管理员,在现有组织下创建一个“newProject990055”,选择它并导航到 IAM 菜单。
  2. 为“newProject990055”添加仅具有“日志查看者”角色的用户。
  3. 使用这样的用户登录并尝试选择项目“newProject990055”。预期:用户不会看到“newProject990055”,因为用户无权列出所有项目,并且“newProject990055”是新项目,并且用户以前从未访问过它。
  4. 对于这样的用户,请点击https://console.cloud.google.com/logs/query?project=newProject990055。预期:用户将看到“newProject990055”项目的日志,并且用户将注意到选择了这样的项目。
  5. 使用此类用户注销并重新登录,单击项目的下拉列表。预期:用户应该能够看到项目“newProject990055”,因为即使用户无权列出所有项目,并且“newProject990055”是新项目,但用户之前已经访问过它。