2.4.4 基于角色的访问控制模型
随着计算机的广泛应用,特别是计算机在商业和民用领域的应用,安全需求变得越来越多样化,自主访问控制和强制访问控制难以适应,基于角色的访问控制成为安全领域的一个研究热点。
在一个基于角色的访问控制(Role-based Access Control,RBAC)中,根据公司或组织的业务要求或管理要求,在系统内设置了若干个“角色”。所谓角色,用一般业务系统中的术语来说,实际上就是业务系统中的岗位、职位或者分工。例如,在一个公司内,财会主管、会计、出纳、核算员等每一种岗位都可以设置多个职员具体从事该岗位的工作,因此它们都可以视作为角色。管理员负责掌管对系统和数据的访问权限,将这些权限(不同类别和级别的)分别赋予承担不同工作职责的用户,并随时根据业务的要求或变化对角色的存取权限进行调整,包括对可传递性的限制。
在基于角色的访问控制中,要求明确区分权限( Authority)和职责(Responsibility)。 例如,在有数个保密级别的系统内,访问权限为0级的某个官员,并不能访问所有保密级别为0的资源,0级是他的权限,而并不是其职责。再如,一个用户或操作员可能有权访问资源的某个集合,但是不能涉及有关授权分配等工作;而一位主管安全的负责人可以修改访问权限,可以分配授权给各个操作员,但是不能同时具备访问/存取任何数据资源的权限。