云原生安全取决于开源

news/2024/7/10 19:57:23 标签: 云原生, 安全, 开源, 开发, 技术

本文首发微信公众号网络研究院,关注获取更多。

Kubernetes 和 K3S 等技术云原生计算的成功和开源力量的代名词。他们在竞争中大获全胜绝非偶然。当企业寻求安全云原生环境时,开源是难题中的关键部分。

工具法则是众所周知的认知偏差。当你只有一把锤子时,每个问题看起来都像钉子。这句话是从相同的、狭隘的角度处理不同问题的比喻:特定的专业知识或技能组合不加区别地应用于每种情况。

当谈到云原生安全性时,请谨慎考虑您目前采用的安全解决方案可能不是合适的解决方案。开源的力量是关键,你需要一种不同类型的锤子。

云原生部署需要独特的安全

网络威胁的盛行及其对合规性、财务损失、声誉和用户隐私的潜在后果使得组织必须优先考虑软件安全

云原生计算由于其架构和分布式动态特性引入了独特的安全需求。

动态基础设施允许根据需求创建、扩展和销毁服务和组件,但这需要能够适应快速变化的实例并一致应用的安全措施。

微服务架构中的通信增加了攻击面,保护容器化环境需要采取图像完整性验证、安全容器运行时配置和定期修补等措施来解决漏洞。

此外,像Kubernetes这样的编排平台还需要考虑额外的安全因素,例如保护集群的网络和 API 端点,而这些对于传统安全工具来说是不可见的。

由于大多数云环境支持多租户,因此需要强大的隔离机制来防止一个租户访问另一个租户的资源。

最后,随着部署规模和复杂性的不断增长,手动安全管理变得不切实际,安全自动化(从威胁检测到合规性管理)至关重要。

如何实现云原生安全

为了满足这些独特的安全需求,组织需要遵循最佳实践:实施强大的访问控制、加密静态和传输中的数据、定期修补软件以及定期进行安全评估。

开发人员和运营团队中培养安全意识文化大有帮助,但需要覆盖哪些关键领域呢?

漏洞管理

从管道到生产,我们开发开源组件来准确、持续地扫描容器生命周期中的漏洞,从构建到交付再到运行。与所有组件一样,可扩展的图像漏洞分析是关键,它可能涉及扫描数千或数十万张图像。

通过实施强大的供应链安全措施,组织可以最大限度地降低中断风险,保护其资产和知识产权的可靠性和完整性,并维持客户和利益相关者的信任。

随着 DevOps 团队集成其工具链以实现基于容器的应用程序的自动部署,安全性始终会减慢现代云原生管道的速度。

虽然自动漏洞扫描是标准做法,但创建安全策略来保护生产中的应用程序工作负载在很大程度上是一个手动过程。

使用 Kubernetes 自定义资源在管道早期捕获和声明应用程序安全策略可以解决此问题。

遵守

在日益严格的监管标准以及对隐私和数据暴露的严厉处罚的情况下,合规性是所有企业的首要考虑因素。

容器环境中的合规性是一项需要特别考虑的挑战。好消息是,基于容器的部署的安全控制使组织能够保护敏感数据,向监管机构展示合规性工作。

深度防御计划包括端到端漏洞管理、通过 CIS 基准进行配置审核以及容器 DLP 保护,提供了传统工具无法实现的可见性和高枕无忧。

容器分割

容器通常部署为微服务,在 Kubernetes 集群中动态部署和扩展。这些微服务可以跨共享网络和服务器(或虚拟机或主机)部署,这种多样化和分布式环境需要虚拟墙来保持个人和私有信息在网络上安全隔离。

这正是容器分段所实现的目标,尽管规模和分布式性质往往会导致复杂的策略创建和执行。

运行时安全

当容器运行时,需要主动保护来检测和防止内部发生恶意活动。进程和文件系统监控可以识别并阻止未经授权的容器活动和连接,而不会中断正常的容器会话。

应考虑其他工具,例如机密计算。

网络可视性

深度网络可见性是运行时容器安全性最关键的部分。考虑到容器部署的动态和快速特性,传统的基于边界的方法(防火墙在攻击到达工作负载之前阻止攻击)在云原生环境中是不够的。

云原生工具解决了传统的缺点,检查容器网络流量以在攻击到达应用程序或工作负载之前阻止攻击,并防止通过网络发送数据的被利用应用程序造成数据泄露。简而言之,适当的网络控制可以限制攻击的影响范围。

为什么开源是正确的

出于几个关键原因,开源云原生安全成功的关键。

确保这个生态系统的安全需要利用全球各地的技能和开源软件开发。正如我之前提到的,共享标准和最佳实践在云原生计算中尤其重要,开源促进了开发人员、架构师和用户之间的协作。

开源模式还带来了数量上的优势。云原生计算基金会 (CNCF) 托管了前面讨论的许多安全组件,并吸引了来自 189 个国家/地区 850 个成员的 175000 名贡献者。

单一实体无法与这些数字以及来自不同地区和利益的不同观点竞争。

多元化创新是开源开发的核心,它为开发人员提供了一个平台,可以试验和改进现有代码,并为不断增长的知识体系做出贡献。

云原生计算需要这种创新来利用新的、更好的方法在云中构建和部署应用程序。考虑到应用程序在云原生计算中跨多个环境频繁部署的情况,开源对互操作性的促进至关重要。

当您考虑安全需求时,请考虑并非一切都是等待同一锤子的钉子。

开放解决方案替代方案及其带来的灵活性、协作、互操作性和创新可以拓宽视野、培养多样化技能并利用不同方法来构建云原生安全成功。


http://www.niftyadmin.cn/n/472148.html

相关文章

ffmpeg dec中AVCodecHWConfigInternal在那里使用

在做ffmpeg decode插件的时候,发现需要增加一个AVCodecHWConfigInternal数组, //就是这个数组 static const AVCodecHWConfigInternal *efcodec_hw_configs[] {&(const AVCodecHWConfigInternal) {.public {.pix_fmt AV_PIX_FMT_EFCCODEC,.me…

superset2.x开启匿名分享

superset 分享图标连接,默认是必须登录账号才能查看,如果想要将图标分享给外部人员,简单来说,直接让他们能够匿名访问会更方便,因此我们需要手动修改配置文件,然后重新初始化,以开启匿名访问。 …

php中的双引号与单引号的基本使用

字符串,在各类编程语言中都是一个非常重要的数据类型 网页当中的图片,文字,特殊符号,HTMl标签,英文等都属于字符串 PHP字符串变量用于存储并处理文本, 在创建字符串之后,我们就可以对它进行操作。我们可以直接在函数中使用字符串,或者把它存储在变量中 字…

C# 通过委托实现多个窗口之间的传值

之前用qt写的时候,都有信号和槽来实现,用C#的话应该也有类似的 大概实现的是我在父窗口当中new了两个子窗口,这个两个子窗口都可以将处理完的数据传递给父窗口,并且两个子窗口通过父窗口进行通信。 我这就按上面窗口名称来说明代…

Rust语言从入门到入坑——(9)Rust 生命周期

文章目录 0、引入1、生命周期注释2、结构体中使用字符串切片引用3、静态生命周期4、泛型、特性与生命周期协同作战5、总结 0、引入 Rust 生命周期机制是与所有权机制同等重要的资源管理机制,之所以引入这个概念主要是应对复杂类型系统中资源管理的问题。 引用是对…

Kafka可视化平台EFAK搭建及使用

文章目录 1.EFAK可视化平台介绍2.搭建EFAK可视化平台2.1.安装JDK环境2.2.安装MySQL数据库2.3.下载EAK二进制安装包并部署2.4.配置EFAK连接Zookeeper集群2.5.调整Eagle启动文件中的变量信息2.6.启动EFAK可视化平台 3.使用EFAK可视化平台3.1.登陆EFAK可视化平台3.2.EFAK仪表盘展示…

MySQL INNER JOIN 的底层实现原理

概述 在MySQL数据库中,INNER JOIN是一种常用的查询操作,用于将两个或多个表中的行通过指定的列进行匹配,获取符合条件的结果集。本文将深入探讨INNER JOIN的底层实现原理,帮助读者更好地理解JOIN操作的工作机制。 INNER JOIN 的…

嵌入式软件常用工具概览

简介 “工欲善其事,必先利其器”,选择高质量并适合自己工具可以提高效率,这里介绍一下一些嵌入式软件开发过程中常用工具。 源码工程类 VSCode :Visual Studio Code 出自微软的代码编辑器,需要的功能可以通过安装插…