0

什么是零信任?

 2 years ago
source link: https://jimmysong.io/blog/what-is-zero-trust/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
  • 日期 :2022年6月22日
  • 分类 : 其他
  • 字数 :1390 字
  • 阅读大约需要 :6 分钟

零信任(Zero Trust)是一种安全理念,而不是一种所有安全团队都要遵循的最佳实践。零信任概念的提出是为了给云原生世界带来更安全的网络。零信任是一种理论状态,即网络内的所有消费者都不仅没有任何权限,而且也不具备对周围网络的感知。

零信任的基础

零信任网络中的所有用户,包括机器和人类,都需要通过一个密码学验证的身份。要是实践零信任,需要从引入用户身份开始,然后考虑限制用户的最小访问权限。零信任实践的基础是认证和授权,这是比起传统的安全策略来说,零信任中的认证变得更加严格,而授权将变得更加细化。举个例子,传统的授权是:“用户 A 可以访问数据中心 D 吗”,而在零信任的框架下将变成“在某个特定的时间点,在某个特定的地区,使用某个特定的设备的用户 A 可以访问某个特定应用中的某个特定文件吗?”

越来越细化的授权

在 Kubernetes 中,我们使用 RBAC 来管理权限。所有用户都是以组为基础来授予或拒绝访问权限,单个用户(服务账户)会被授予过多的访问权限。零信任的一个重要特征就是更细的粒度,基于角色来授予访问权限是不够安全的。我们需要细化用户对单一资源在限定时间内的访问权限。这正好与微服务背后的原则相契合——随着服务和数据被分解成更小的部分,就有可能允许我们细化地位服务授予访问权限。

有时间限制的授权

关于授权,我们往往会存在一种误解,即一个用户一旦被认证和授权,他就成了一个“受信任”的用户,该用户就可以随时的对系统进行访问。然后,在零信任网络中,没有受信任的用户或设备。用户的每一次访问都需要经过认证和授权。而且,授权还会有一个时间窗口,用户只能在这个规定的实践窗口中执行规定的动作。

如何在企业内实行零信任网络

因为网络是企业系统的命脉之一,牵一发而动全身,要在企业内实行零信任网络,通常需要战略高层管理人员接纳零信任,通过自上而下的方式强加给安全团队。然后渐进式的改进你的网络,从一个关键业务开始,使其变成零信任的。

在零信任网络里,默认是拒绝一切访问。需要在应用程序开发中,积极主动的允许来自应用程序的某些适当的请求。身份是零信任的基础,而不是网络。零信任的关注对象是访问点、身份认证与授权和攻击面。对于云原生应用,因为它们的生命周期短暂且是动态的,为了实现零信任,你必须为每个访问点配置一个规则,不断更新应用程序的证书和访问规则,这时候手动配置几乎是不可能的,你必须实现自动化。

在 IstioCon 2022 的主题演讲 有提到,Istio 正在成为零信任的一个重要组成部分。其中最主要的是面向身份的控制,而不是面向网络的控制。这方面的核心原则在谷歌白皮书《BeyondProd:云原生安全的新方法》 上有描写 。

如果我们能将身份概念扩展到用户,并为我们提供灵活而丰富的策略机制来指定、监控和跟踪访问控制,我们就能达到一个可操作的零信任架构 —— 将用户、服务和数据统一到一个管理层。我所工作的公司 Tetrate 创建了 Tetrate Service Bridge —— 可供大型组织使用的管理平面,也是践行了零信任的理念。

零信任是一种安全理念,它的基础是认证和授权。但比起传统网络安全方法来说,零信任具有如下特点:

  • 系统中的所有工作负载都有一个密码学验证的身份
  • 零信任网络默认拒绝所有访问
  • 具有更细粒度的访问授权。

为了在云原生应用中实行零信任,你需要:

  • 自上而下的推行
  • 从关键业务入口
  • 建立自动化工具

下面有一些资料你可以参考:


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK