授权和访问权限控制

Identity and Access Management (IAM) 是一种工具,可用于控制哪些人可以在 Google Cloud 环境中执行哪些操作。

访问权限通过 IAM 权限进行控制,而 IAM 权限是使用 Google Cloud 环境中的任何资源所必需的。在您获得使用某个资源的权限后,即表示您已获得访问该资源的授权。如果没有适当的授权,您将无法访问 Google Cloud资源。

权限和角色

如需使用资源,您的用户账号必须拥有访问该资源的相关权限。

通常,您的 IAM 管理员负责控制对资源的访问权限。管理员可以为您授予访问项目、文件夹或组织中的单个资源或所有资源的权限。 管理员会以一组角色的形式向您的用户账号授予相关权限。只要您的用户账号具有相应权限的角色,您就可以使用该角色访问 Google Cloud 资源。

一般来说,在Google Cloud 环境中对任何资源执行操作的工作流程如下所示:

  1. 您想对资源执行某项操作(例如将对象上传到 Cloud Storage 存储桶),但您没有相应的权限。没有相应权限,您将无法执行该操作。
  2. 您可以通过您首选的请求管理系统或直接从 Google Cloud 控制台中的权限错误消息向 IAM 管理员请求所需的权限。
  3. 您的 IAM 管理员会向您的用户账号授予具有相应权限的角色。您现在可以执行该操作。

以管理员身份使用 IAM

管理员通常负责向用户授予角色,以便用户可以访问 Google Cloud 资源。用户由经过身份验证的身份(称为主账号)表示。

向主账号授予某个资源的角色需要修改附加到该资源的允许政策。允许政策会列出哪些主账号有权访问资源,以及他们可以对资源执行哪些操作。 IAM 会使用允许政策来确定主账号是否拥有访问资源所需的权限。因此,如需向主账号授予对特定资源的访问权限,您必须使用主账号和要授予的角色来更新该资源的允许政策。

管理员可以向主账号授予以下类型的资源的角色:

  • 项目、文件夹和组织:这些资源是用于构建资源层次结构的容器资源。您针对这些容器资源授予的角色适用于它们包含的所有服务特有资源。
  • 服务特有的资源:这些资源是服务提供的功能或组件。例如,Compute Engine 具有实例、磁盘和子网等资源。与授予容器资源的角色相比,授予服务特有资源的角色可提供更精细的访问权限控制,因为这样可将用户的访问权限仅限于该资源。

使用 IAM 进行高级访问权限控制

允许政策是使用 IAM 控制对Google Cloud 环境的访问权限的最常用方法。不过,IAM 还提供了其他更高级的访问权限控制选项,包括:

  • 其他政策类型,例如拒绝政策和主账号访问权限边界政策
  • 基于属性的条件性访问权限控制
  • 临时访问权限控制,例如 Privileged Access Manager (PAM)

其他形式的访问权限控制

虽然 IAM 是Google Cloud的主要访问权限控制方法,但还有其他 Google Cloud 服务可能会影响用户对资源的访问权限。

以下是一些可能会影响用户访问权限的其他服务示例:

  • Access Context Manager:借助 Access Context Manager,您可以为 Google Cloud中的项目和资源定义基于属性的精细访问权限控制。
  • Identity-Aware Proxy (IAP):IAP 使用应用级访问权限控制模型,您可以在其中为通过 HTTPS 访问的应用建立中央授权层。
  • 组织政策服务:借助组织政策,您可以在整个资源层次结构中配置限制条件,以通过程序化方式对组织的云资源进行集中控制。
  • VPC Service Controls:借助 VPC Service Controls,您可以定义边界,以帮助保护您明确指定的 Google Cloud 服务的 Google Cloud 资源和数据。

后续步骤