零信任安全模型的组件有哪些?
与像 Bell-LaPadula 这样更为正式的受控访问模型不同,零信任安全模型通常是用抽象的术语来描述的。不同的团体或标准机构往往使用不同的组件集。一个典型的组件集可能包括:
- 用户和非个人实体(NPE)身份的强大、单一的来源
- 用户和机器认证
- 其他背景信息,例如策略合规性和设备运行状况
- 用于访问应用或资源的授权策略
- 应用内的访问控制策略
这些组件主要集中在如何使用默认的”全部拒绝”和”例外允许”来实施基于身份的访问策略。
信任边界
信任边界是组件之间的任何逻辑区隔,参与交互的主体会在这里更改其信任状态(通常在”受信任”和”不受信任”两种状态之间)。一般来说,从不受信任到受信任的转变需要完成两件事:
- 验证:验证和/或确认主体的身份。
- 授权:验证和/或确认访问资产(数据、系统等)的权利和要求。
为了遵守零信任原则,信任边界必须尽可能小;按照定义,在边界内主体是受信任的,并且可以省略、绕过或以其他方式限制访问控制。由于授权应仅针对特定的业务功能,因此对于任何允许访问其他功能的边界,都应缩小它的范围。
并非系统架构中的所有安全边界都需要符合正确的零信任边界标准。这些普通边界(例如过滤不需要的 IP 地址、允许某些协议访问网络,或限制社交媒体的使用)可以与零信任重叠,并且仍然能在安全策略中发挥作用。然而,采用零信任的主要区别在于:普通边界并不是信任计算的一部分,而在传统网络架构中却可能是。只有符合零信任原则的边界才能在信任计算中发挥作用。
零信任要求始终保持不同主体之间的区隔:也就是说,任何两个主体之间始终存在信任边界,因此每次交互都需要多重身份验证(MFA)和直接授权。即便是两个主体在同一个网络上(一种非常常见的情景),但它们既不在同一物理位置上,也不属于同一业务线或集成系统的一部分,因此没有隐含的信任。
零信任安全模型会强制执行这些信任边界。通常,这是通过在与所有资源的所有潜在交互之间插入一个执行点来实现的。当这些交互随着时间而变化时,系统的身份、资源状态及其他方面也会发生改变。这种持续的改变需要对身份和资源进行同样持续的评估和监控,并适应性地执行身份验证和授权。