Identity and Access Management (IAM)

Google Cloud 提供 Identity and Access Management (IAM),可让您授予对特定 Google Cloud 资源更细化的访问权限,并防止对其他资源进行不必要的访问。本页面介绍 Datastore 模式 Firestore 的 IAM 角色。如需详细了解 IAM,请参阅 IAM 文档

IAM 允许您采用最小权限安全原则,因此您只授予对您资源的必要访问权限。

IAM 允许您通过设置 IAM 策略来控制谁(用户)哪些资源具有什么权限(角色)。您可以使用 IAM 政策向用户授予特定角色,从而给予用户特定权限。例如,您可以向某个用户授予 datastore.indexAdmin 角色,从而使该用户可以创建、修改、删除、列出或查看索引。

权限和角色

本部分汇总了 Datastore 模式 Firestore 支持的权限和角色。

权限

下表列出了 Datastore 模式 Firestore 支持的权限。

数据库权限名称 说明
datastore.databases.export 从数据库中导出实体。
datastore.databases.bulkDelete 从数据库中批量删除实体。
datastore.databases.get 开始或回滚事务。
提交空突变。
datastore.databases.import 将实体导入到数据库中。
datastore.databases.getMetadata 从数据库中读取元数据。
datastore.databases.list 列出项目中的数据库。
datastore.databases.create 创建数据库。
datastore.databases.update 更新数据库。
datastore.databases.delete 删除数据库。
datastore.databases.clone 克隆数据库。

如果您的 clone 请求包含 tags 值,则需要以下额外权限:

  • datastore.databases.createTagBinding

如果您想通过列出绑定来验证标记绑定是否已成功设置,则需要以下额外权限:

  • datastore.databases.listTagBindings
  • datastore.databases.listEffectiveTags
datastore.databases.createTagBinding 为数据库创建标记绑定。
datastore.databases.deleteTagBinding 删除数据库的标记绑定。
datastore.databases.listTagBindings 列出数据库的所有标记绑定。
datastore.databases.listEffectiveTagBindings 列出数据库的有效标记绑定。
实体权限名称 说明
datastore.entities.allocateIds 使用不完整的键路径为键分配 ID。
datastore.entities.create 创建实体。
datastore.entities.delete 删除实体。
datastore.entities.get 读取实体。
datastore.entities.list 列出项目中实体的键。
(如需访问实体数据,则需要 datastore.entities.get。)
datastore.entities.update 更新实体。
索引权限名称 说明
datastore.schemas.create 创建索引。
datastore.schemas.delete 删除索引。
datastore.schemas.get 读取索引的元数据。
datastore.schemas.list 列出项目中的索引。
datastore.schemas.update 更新索引。