技术分享
云端安全挑战:探析云原生架构下的安全困境
发布时间 · 2024-08-06

 什么是云原生?

云原生是一种设计和构建应用程序的方法,让企业能够依托“云”的弹性与分布式的特点,部署云上业务,充分利用云计算技术和云基础设施的优势,使业务更敏捷、可控性更强。

01.CNCF(云原生计算基金会)的定义

 



 云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。

这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。

02.云原生技术的崛起

近十年来,云计算的迅速发展推动了传统产业的数字化转型,企业的基础设施资源也逐步从传统的服务器向云资源发展,并正进入云原生计算阶段。

Gartner在2021年的一份报告中曾预测,部署在云原生平台上的工作负载占比将从当时的30%上升至2025年的95%;McKinsey Digital也曾在2022年的一篇文章中表示,在他们的一份调查中,11%的中国公司计划将公有云作为主要的业务模式,49%计划向云原生转变,其他公司将继续使用混合云或私有云与传统服务器相结合的方式。

03.企业在转型过程中面临哪些安全挑战?

在企业转型的过程中,应用程序将从传统的单体架构向微服务架构发展。云计算模式也相应将从IaaS(基础设施即服务)转向CaaS(容器即服务)和FaaS(功能即服务)。

IT技术架构的转变会带来新的基础设施的应用,也将带来很多不同于传统应用程序的新风险。

Kubernetes官方团队采用系统分层架构的方法,将云原生安全总结为4C模型,分别是云或基础设施层(Cloud)、Kubernetes集群层(Cluster)、容器层(Container)、代码层(Code)。通过这个模型,我们可以对云原生安全有一个初步的认识。

模型中的每一层安全防护都建立在外层的基础上,如果没有Cloud层、Cluster层、Container层的安全防护,Code层的防护将形同虚设。

 

Figure 3 Kubernetes提出的云原生安全的4C模型

另外,我们也可以采用一个更具体的角度分析与云原生技术相关的安全风险,分别是:容器基础设施存在的风险、容器编排平台存在的风险、云原生应用存在的风险和宿主机层面存在的风险。可参考下图: