RBAC 解释
RBAC(基于角色的访问控制)是一种基于角色的访问控制方法。通过 RBAC,可以精细控制用户在 Collections、数据库和实例级别上可以执行的操作,增强数据的安全性。
与传统的用户访问控制模型不同,RBAC 引入了角色的概念。在 RBAC 模型中,先授予角色权限,然后再将这些角色授予用户。然后,用户才能获得权限。
RBAC 模型可以提高访问控制管理的效率。例如,如果多个用户需要同一套权限,就不需要为每个用户手动设置权限。相反,你可以创建一个角色并将该角色分配给用户。如果要调整这些用户的权限,只需调整角色的权限,修改后的权限将应用到所有拥有该角色的用户。
RBAC 主要概念
用户、角色和权限
RBAC 模型中有四个主要组成部分。
**资源:**可访问的资源实体。Milvus 中的资源分为三个级别--实例、数据库和 Collections。
**权限:**对 Milvus 资源执行特定操作的权限(如创建 Collection、插入数据等)。
**权限组:**由多个权限组成的组。
**角色:**角色由权限和资源两部分组成。权限定义了角色可以执行的操作类型,而资源则定义了可以执行操作的目标资源。例如,数据库管理员角色可以对某些数据库执行读、写和管理操作。
**用户:**用户是指使用 Milvus 的人。每个用户都有一个唯一的 ID,并被授予一个或多个角色。
程序
要通过 RBAC 实现访问控制,需要遵循以下步骤。
创建用户:除了 Milvus 的默认用户
root
外,您还可以创建新用户并设置密码,以保护数据安全。创建角色:您可以根据需要创建自定义角色。角色的具体功能由其权限决定。
创建权限组:将多个权限合并为一个权限组,以简化向角色授予权限的流程。
向角色授予权限或权限组:通过向角色授予权限或权限组来定义角色的功能。
向用户授予角色:向用户授予具有特定权限的角色,这样用户就可以拥有某个角色的权限。一个角色可以授予多个用户。