跳到主要内容

用户和角色

本主题解释了基于角色的访问控制(RBAC)中用户、角色、对象和权限的定义。

  • 对象: 用于授予或拒绝访问权限的对象。对象可以是一个集合、一个分区等。

  • 用户: 具有用户名和相应密码的用户身份。

  • 权限: 权限定义了可以执行的操作和可以访问的资源。权限不能直接授予给用户,必须首先授予给角色。

  • 角色: 角色定义了用户对某些对象拥有的权限。将角色绑定到用户后,用户将继承授予该角色的所有权限。

下图说明了对象、权限、角色和用户之间的关系。

users_and_roles

对象、权限、角色和用户之间的关系。

Milvus 默认创建一个名为 root 的用户,密码为 Milvusroot 用户被授予 admin 权限,这意味着该 root 用户可以访问所有资源并执行所有操作。

如果用户绑定了一个 public 角色,该用户将有权利执行 DescribeCollectionShowCollectionsIndexDetail 的权限。

下表列出了在启用 RBAC时可以选择的值。

对象名称权限名称客户端端相关 API 描述
集合CreateIndexCreateIndex
集合DropIndexDropIndex
集合IndexDetailDescribeIndex/GetIndexState/GetIndexBuildProgress
集合LoadLoadCollection/GetLoadingProgress/GetLoadState
集合GetLoadingProgressGetLoadingProgress
集合GetLoadStateGetLoadState
集合ReleaseReleaseCollection
集合InsertInsert
集合DeleteDelete
集合UpsertUpsert
集合SearchSearch
集合FlushFlush/GetFlushState
集合GetFlushStateGetFlushState
集合查询查询统计
集合获取统计信息获取集合统计信息
集合压缩压缩
集合导入批量插入/导入
集合负载均衡负载均衡
集合创建分区创建分区
集合删除分区删除分区
集合显示分区信息显示分区信息
集合是否有分区是否有分区
全局所有权限此表中的所有 API 操作权限
全局创建集合创建集合
全局删除集合删除集合
全局描述集合描述集合
全局显示集合显示集合
全局重命名集合重命名集合
全局清空所有数据清空所有数据
全局创建所有权创建用户 创建角色
全局删除所有权删除凭证 删除角色
全局选择所有权选择角色/选择授权
全局管理所有权操作用户角色 操作权限
全局创建资源组创建资源组
全局删除资源组删除资源组
全局描述资源组描述资源组
全局列出资源组列出资源组
全局转移节点转移节点
全局转移副本转移副本
全局创建数据库创建数据库
全局删除数据库删除数据库
全局列出数据库列出数据库
全局创建别名创建别名
全局删除别名删除别名
全局描述别名描述别名
全局列出别名列出别名
用户更新用户更新凭据
用户选择用户选择用户
  • 对象和权限名称区分大小写。
  • 要授予某种对象(如 Collection、Global、User)的所有权限,请在权限名称中使用“*”。
  • 全局对象的“*”权限名称不包括“全部”权限,因为“全部”权限包括所有权限,包括任何集合和用户对象。

接下来