随着“云大物移”企业的不断崛起IT架构正在从“有边界”向“无边界”传统,传统的安全边界逐渐瓦解。5G、以工业互联网为代表的新基础设施的不断推进进一步加快“无边界”进化过程。与此同时,零信任安全逐渐进入人们的视野,成为解决新时代网络安全的新理念、新结构、新解决方案。
本文主要讨论零信任访问控制模型。
一、概述
零信任(Zero Trust,ZT),顾名思义就是“永不信任,持续验证”。NIST零信任的定义是:零信任系统的结构(ZTA)在信息系统和服务中实施精确访问决策时,提供了一系列的概念、思想和组件关系。
核心概念:所有流量不可信;不以位置为安全依据,采取所有访问安全措施;采用最小授权策略和严格的访问控制;所有流量都需要可视化和分析。

访问控制技术是信息系统安全的核心技术之一。访问控制是一种通过某种方式显示允许或限制主体访问能力范围的方法。它是越权使用系统资源的防御措施。通过显示访问受保护资源,防止非法用户入侵或合法用户意外操作造成的损坏,确保系统资源得到控制和合法使用。
访问控制模型是从访问控制技术的角度定义主体、对象和对象的访问计划,从抽象层面描述访问控制约束的概念框架,建立适应各种实现方法和应用环境的安全模型。建立标准化的访问控制模型是实现严格访问控制约束的基础。
在零信任网络架构下,系统需要能够有效地减少和限制异常用户的访问行为,而网络环境已经被攻击。那么,零信任架构的访问控制模型应该如何设计呢?
首先,让我们来看看访问控制的发展路线。
二是访问控制的发展路线
访问控制技术起源于20世纪70年代,最初是为了解决大型主机共享数据授权访问的管理问题。经过40多年的蓬勃发展,访问控制技术的应用领域逐渐扩大,如早期独立访问控制(DAC)强制访问控制模型(MAC);中期基于角色的访问控制(RBAC);“域”介绍概念促进了基于任务的访问控制模型(TBAC);云计算、大数据等计算模式也促进了基于属性的新访问控制模型(ABAC)等。
1. 早期访问控制模型
(1) 自主访问控制(DAC,Discretionary Access Control)
DAC该模型通过建立客体关联表,主要以访问控制列表的形式在表中组织主体和客体之间的关联。其独立性主要体现在系统中的主体可以在没有系统安全员允许的情况下,将其所拥有的权限授权给其他主体。也就是说,用户有权访问自己创建的访问对象(服务器、目录、文件、数据等),并将访问权授予其他用户、系统和从授予权限的用户和系统回收器。
DAC模型的优点是更灵活,更容易实现。其缺点是资源管理相对分散,主体之间的关系不能明显反映在系统中;最严重的是主体可以独立授予其他主体,可能导致权限传输失控,容易攻击,导致信息泄露。此外,如果主体和对象的数量太大,DAC该模型将带来巨大的系统成本,因此很少用于大型系统。
(2) 强制访问控制(MAC,Mandatory Access Control)
MAC它是由美国政府和军方开发的,要求信息机密性,防止木马攻击。其基本思想是根据主体和对象的安全属性水平来决定主体是否有访问对象的权限,主要用于多层次的安全军事体系。
在强制访问控制机制下,系统中的每个用户或主体都被赋予一个安全属性来表示访问对象的敏感性。同样,系统中的每个对象也被赋予一个安全属性,以反映其自身的敏感性。系统决定是否通过比较主体和对象的相应安全属性来授予对象的访问请求。安全属性由系统策略管理员分配,具有强制性。用户或用户的过程不能改变其自身或其他主体或对象的安全属性。
MAC该模型具有安全性高的优点,可通过单向信息流防止机密信息泄漏,以抵抗攻击;同时,由于用户无法改变自己或其他对象的属性,MAC它可以防止用户滥用他们的权力。缺点是灵活性低,权限不能动态变化,授权管理困难,用户无法恶意泄露信息。

2. 中期访问控制模型
(1) 基于角色的访问控制(RBAC,Role-Based Access Control)
为了解决DAC和MAC将权限直接分配给主体,造成管理困难的缺陷。介绍了访问控制模型“角色”的概念,即RBAC。所谓角色,是一组或一组用户可以在组织中操作的集合。RBAC通过引入角色中介,角色权限的变更将自动更新每个拥有角色的用户的权限。如果用户改变了角色,其权限也会改变。
RBAC该模型的优点是引入“角色”该概念实现了用户与权限之间的逻辑分离,大大简化了授权管理,使其接近日常组织管理规则,实现了最小权限原则,具有较强的实用性。缺点是用户可以同时激活多个角色,限制颗粒大,容易造成用户权限过大带来的安全风险,主客体之间的联系薄弱,可扩展性不强,难以适用于分布式系统。
(2) 基于对象的访问控制(OBAC,Object-Based Access Control)
OBAC从信息系统数据差异和用户需求的变化出发,有效解决了信息数据量大、数据类型多、数据更新频繁的大型管理信息系统的安全管理。OBAC从受控对象的角度来看,访问对象的访问权限与受控对象直接相关,一方面定义访问控制列表,增加、删除、修改访问控制项目,另一方面,当受控对象的属性发生变化或继承和衍生时,无需更新访问主体权限,只需修改相应的访问控制项目,减少访问主体的权限管理,降低授权数据管理的复杂性。
(3) 于任务的访问控制(TBAC,Task-Based Access Control)
访问权限与任务结合,每个任务的执行都被看做是主体使用相关访问权限访问客体的过程。在任务执行过程中,权限被消耗,当权限用完时,主体就不能再访问客体了。
系统授予用户的访问权不仅与主体和对象有关,还与主体当前执行的任务和任务状态有关。对象的访问控制权不是静止的,而是随着执行任务的上下文环境而变化。

3. 新的访问控制模型
(1) 基于属性的访问控制(ABAC,Attribute-Based Access Control)
ABAC它是一种细粒度访问管理方法,基于已分配给用户、操作、资源或环境的定义规则,决定批准或拒绝具体信息的访问请求。
针对复杂信息系统中的细粒度访问控制和大规模用户动态扩展,实体属性(组)的概念贯穿于访问控制策略、模型和实现机制三个层次,描述授权和访问控制约束,通过主体、对象、权限和环境属性的统一建模,具有足够的灵活性和可扩展性。
ABAC该模型具有框架式的优点,可与其他访问控制模型(如RBAC);缺点是所有元素都需要以属性的形式来描述,有些关系不容易用基本属性来描述。
(2) 基于策略的访问控制(PBAC,Policy-Based Access Control)
PBAC这是一种将角色、属性和逻辑结合起来,创建灵活的动态控制策略的方法。ABAC同样,它使用许多属性来确定访问权限。它支持环境和上下文控制,因此可以在特定的时间和地点设置访问资源的策略,甚至评估身份和资源之间的关系。政策可以快速调整,并为给定的时间段(如处理违规行为或其他紧急情况)设置政策。您可以很容易地添加、删除或修改用户组,并通过单击取消过时的权限。PlainID公司的Policy Manager提供了PBAC的支持。
(3) 下一代访问控制(NGAC,Next Generation Access Control)
下一代访问控制(NGAC)为了满足现代、分布式、互联网企业的需要,重新发明了传统的访问控制。NGAC设计可扩展,支持广泛的访问控制策略,实施不同类型的策略,为不同类型的资源提供访问控制服务,面对变化保持可管理。NGAC遵循基于属性的结构,用于控制资源访问,并描述和管理策略。
该标准规定NGAC框架的系统结构、安全模型和接口,以确保在不同类型的实现环境中实现一系列可伸缩水平,并获得必要的内聚和功能,以便在系统水平上正确有效地运行。
三、零信任访问控制模型的思考
在零信任访问控制模型中,需要在没有传统边界的动态世界中实现一致的策略。我们大多数人在混合环境中工作,数据从公司服务器或云流向办公室、家庭、酒店和汽车,并提供开放服务WIFI热咖啡馆。
此外,数据暴露的风险也随着用户设备类型和数量的激增而增加,如PC、笔记本电脑、智能手机、平板电脑等物联网设备。设备的多样性使得很难创建和保持访问策略的一致性。
过去,访问控制的方法是静态的DAC、MAC、RBAC访问控制问题可以很好地解决。如今,网络访问必须是动态和流动的,以支持基于身份和应用的动态访问控制。

高级访问控制策略应动态调整,以响应不断进化的风险因素,使被入侵的公司或组织能够隔离相关员工和数据资源来控制伤害。访问控制规则必须根据风险因素进行改变,即公司企业应在现有网络和安全配置的基础上部署使用人工智能(AI)零信任访问控制模型的主要目标是实现机器学习的安全分析层。
因此,零信任访问控制模型不应局限于某种访问控制模型,而应根据处理数据的类型和敏感性来确定,无论是旧的独立访问控制模型(DAC)强制访问控制(MAC)、基于角色最常用的控制模型(RBAC)、基于属性的最新访问控制模型(ABAC),所有零信任安全的场景都不能单独满足。只有协同使用各种技术,才能达到所需访问控制的等级和要求。