在 Kubernetes 上实施零信任策略可以为用户带来简化的体验。尽管 Kubernetes 本身存在复杂性和缺点,但它是一个具有明确安全模型和扩展机制的平台。因此,在实施零信任策略方面,Kubernetes 非常有效。
目前,对于 Kubernetes 环境中的零信任,主要关注两个方向:
-
零信任网络:在 Kubernetes 中,实现零信任网络的一种直接方法是使用服务网格(Service Mesh)。服务网格利用 Kubernetes 的强大功能,通过在部署时动态将平台容器与应用容器一起插入,以实现后期绑定操作功能。
-
微服务的 API 安全性:API 已成为现代应用程序的核心,用于将关键信息和数据从应用程序的一部分传递到另一部分,或者从一个应用程序传递到另一个应用程序。因此,在保护应用程序时,API 安全性至关重要。特别是对于公共 API,全球用户都可以访问软件组件和敏感数据。
明确了关注点后,下面就是确定解决方案以及如何落地。kubernetes原生自带组件,包括身份认证鉴权、监控审计、策略管理等,随着容器架构的落地,也衍生出专注于网络和API的零信任组件。典型的为Meta Networks公司开发开发的Calico以及Google、IBM和Lyft联合开发的Istio。
Calico从网络层面达到零信任,它主要用于容器编排平台(如Kubernetes、Docker)中,提供高性能、高可靠性、安全的网络连接,并具备路由、策略、防火墙等功能。Istio用于解决微服务、API层面的零信任,为微服务架构中的服务之间提供可观测性、可靠性、安全性等特性,通过功能强大的代理和控制平面来管理和保护服务之间的通信。
Istio从用户态实现,主要聚焦于服务,Calico从内核态实现,主要聚焦于节点。
详细内容参见另一篇文章:kubernetes的零信任组件,kubernetes的零信任组件详解