ABAC、RBAC和RABAC都是常见的权限控制模型,它们分别表示:
-
ABAC(Attribute-Based Access Control)基于属性的访问控制:该模型通过评估用户、对象和环境的属性,来决定用户是否有权访问某个对象。例如,一个用户可以访问某个文件的条件可能是:他的职位是经理,他所在的部门是财务部,当前时间是工作日的上午。
-
RBAC(Role-Based Access Control)基于角色的访问控制:该模型通过将用户分配到不同的角色,并定义角色可以访问的资源,来决定用户是否有权访问某个对象。例如,一个用户可以被分配为“管理员”角色,可以访问所有系统资源,而另一个用户可以被分配为“普通用户”角色,只能访问部分资源。
-
RABAC(Relationship-Based Access Control)基于关系的访问控制:该模型通过定义用户和资源之间的关系,来决定用户是否有权访问某个对象。例如,一个用户可以访问某个文件的条件可能是:他是该文件的所有者,他是该文件的共同编辑者之一,他是该文件的上级领导等等。