CON307 | 使用 Amazon Elastic Container Service 安全功能保护生产
关键字: [Amazon Web Services re:Invent 2023, Amazon Elastic Container Service (ECS), Security Features, Ecs, Credentials Isolation, Network Isolation, Access Control]
本文字数: 2300, 阅读完需: 12 分钟
视频
导读
借助 Amazon Elastic Container Service,您可使用亚马逊云科技的内置安全功能来保护应用程序。在本次分享中,了解可以通过哪些安全功能保护应用程序,您可使用 IAM Roles 部署安全应用程序以完成任务,并使用安全组部署网络安全。还可了解如何向容器提供机密和机密信息。
演讲精华
以下是小编为您整理的本次演讲的精华,共2000字,阅读时间大约是10分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。
亚马逊云科技的ECS高级产品经理Spiros Theodosiou在一场富有成效的会议上发表了演讲,他在云计算领域拥有超过十年的经验。他欢迎数百名云计算爱好者参加关于如何利用亚马逊ECS安全功能保护生产工作负载的讨论。他强调,对亚马逊云科技公司及其自身的ECS服务来说,安全性是绝对的首要任务,因为该公司在全球拥有190个国家和地区、数百万客户。此外,客户不仅关心他们的云资产和应用的安全性,还特别关注他们客户数据和他们用户个人可识别信息的安全,这些信息可能来自数十万至数亿客户。
大多数隐私法规和标准,如欧洲的一般数据保护条例(GDPR)和加拿大的个人信息保护和电子文档法(PIPEDA),都关注保护这种类型的敏感用户个人信息。因此,遵守这些全球监管机构的要求已成为客户在将关键任务工作负载迁移到云端时评估的任何云解决方案的基本预期。
为了阐述这一点,Spiros提到了现实生活中的Canva案例,Canva是一个领先的设计和协作平台,可用于创建演示文稿、社交媒体图片、海报等。2019年11月,Canva正式推出了Canva for Enterprise服务。自那时以来,Canva取得了显著的增长,第一年增长三倍,每周有超过600万个商业演示文稿在平台上由数十万名用户创建。然而,随着商务专业人士的大量使用,Canva需要一个可靠、可扩展且最重要的是安全的底层平台,以保护全球数百万用户可能在该平台上创建的知识产权和专有业务内容。通过使用ECS来运行其关键业务工作负载,并辅以其他紧密集成 的亚马逊云科技服务(如IAM、VPC、CloudTrail等),Canva得以实现其支持大量企业使用的目标。正如Spiros所言,ECS从一开始就提供了跨越数十种亚马逊云科技服务的紧密集成体验,以提供最佳的客户效果,尤其是在安全性方面。
此外,Spiros指出,ECS已经应用于数千家来自各个行业的企业客户,包括主要的金融、医疗、零售、技术和政府机构,这些机构具有各种严格的安全需求。他们的某些共同需求包括处理用户身份验证和授权的能力、数据传输和存储的加密、明确的资源标识、网络分段、密钥管理、特权访问控制等——所有这些都是为了支持从数十到数十万资源范围的基础设施。ECS通过其强大的成熟安全功能(如用于任务的IAM角色、通过EBS和EFS的加密、资源标签、VPC网络、通过Parameter Store和Secrets Manager集成的密钥管理等)来满足这些企业级需求。
此外,亚马逊弹性计算服务(ECS)还生成了数十个服务事件和指标,可供其他亚马逊云科技的安全服务(如GuardDuty、Security Hub和CloudWatch)使用。这些数据是基于亚马逊云科技内部数十亿事件的集体智能,用于实现高级威胁检测、安全态势分析、异常检测等功能。Spiros强调,对于那些希望深入了解其系统内部情况的客户,可观察性是当前投资的主要领域之一。ECS通过集成如Amazon CloudWatch Logs、Fluentd和Fluent Bit等技术,轻松地收集、分析和可视化日志数据。同时,ECS还发布了各个方面的细粒度指标,以便实时监控数千个集群、任务、服务和容器的性能。此外,ECS生成的详细追踪数据可被用于快速故障排除、根本原因分析、审计和合规等方面,每天追踪数十亿次请求。
虽然亚马逊云科技致力于提供紧密且原生集成的服务,但ECS也允许合作伙伴在其基础上进行构建,并通过其开放的API和SDK贡献额外的安全、分析和可视能力。最终目标是满足运行关键业务应用程序的ECS用户在不同安全和观察需求——从数百个任务到数十万个任务不等。
接下来,Spiros概述了共享责任模型,即亚马逊云科技负责底层云计算基础设施、服务、区域和可用区的安全,保护数百万资源并每日处理数十亿事件。另一方面,客户负责云中的安全,包括保护他们的数据、应用、身份和访问管理、亚马逊云科技服务的配置以及根据他们的需求设置安全策略。
他指出,经过在大型公司多年的生产部署经验,ECS已经发展成为一种成熟且经过验证的服务。随着全球迅速采用云计算技术,其增长速度显著加快。借助ECS的安全功能,企业可以实现严格的合规性,如SOC、ISO、PCI DSS、HIPAA等标准,这在之前自己的数据中心中将是极具挑战性的。亚马逊云科技通过模仿最高级别的认证和合规标准,并持续不断改进ECS以跟上法规变化,从而帮助实现这一目标。
斯皮罗斯(Spiros)随后将发言权交给了在亚马逊云科技拥有5年以上经验的资深软件开发工程师夏尔亚纳·拉奥(Sharanya Rao),让她深入探讨ECS内的安全特性。夏尔亚纳首先概述了ECS架构的关键组件——EC2实例、Fargate、容器运行时、ECS代理、任务定义、服务、容器和应用。她解释了在这层栈的每一层都可以利用哪些特定的安全功能,以支持从数百到数百万的资源的基础设施。这包括计算隔离、不可变基础设施、细粒度的IAM策略、网络分段、加密、密钥管理、资源控制、审计等等。
接下来,夏尔亚纳探讨了一些非常常见的客户使用案例,以及如何利用各种ECS安全功能来解决这些问题。第一个案例是关于关键操作系统级漏洞(如Heartbleed、Shellshock等)的修补。对于Fargate,亚马逊云科技通过平台版本升级完全在后台以完全托管的方式进行处理。这允许快速修补数百万资源底层的内核和运行时的漏洞。ECS在应用补丁后会在停用旧的平台版本之前向客户提供前瞻性的通知。
对于EC2启动类型,亚马逊云科技定期提供包含最新更新的ECS优化的Amazon Machine Images(AMI),包括针对ECS代理、Docker守护程序、操作系统和更多的更新。客户可以使用Auto Scaling群组和ECS容量提供者在这些更新的AMI上逐步推广,以便逐渐替换旧的实例或立即将所有集群用最新的安全补丁进行快速更新。
沙冉雅纳(Sharanya)接着介绍了一种常见的ECS应用,即如何为任务和服务提供最低权限授权。这种做法有助于遵循最小权限原则和安全的最佳实践。建议采用的方法是为每个ECS任务分配IAM角色。这样一来,客户可以为每个ECS任务制定详细的IAM策略,而无需在所有任务中共享广泛的凭证。这样做可以防止未经授权的访问,因为受影响的单个任务无法访问其他任务的资源或数据。所有使用ECS IAM角色的操作都会在CloudTrail中留下记录,该服务每天都会捕获来自所有服务的数十亿个API调用来进行审查和威胁检测。
随后,沙冉雅纳通过一个场景向开发者展示了如何在两个ECS服务之间(例如前端Web应用程序和后端数据库)隔离网络。ECS任务网络可用于为每个任务分配弹性网络接口(ENIs),就像EC2实例拥有自己的ENIs一样。这使得可以在集群中数千个任务的每个任务级别上定义独立的安全组、网络ACL和有状态防火墙规则。VPC流量日志通过捕捉每个网络接口的IP流量元数据(包括ECS任务的ENIs)来提供额外的网络可见性和分析。这样每天可以记录数十亿的网络流来进行深入的监控。
沙冉雅纳还讨论了以安全方式将密钥(如数据库密码、API密钥和令牌)传递到ECS容器的需求。实现这一目标的方法是与亚马逊云科技Secrets Manager或Systems Manager参数存储集成。ECS任务可以引用这些服务中安全存储的特定秘密或秘密密钥,而不是将这些敏感数据捆绑到容器定义或环境变量中。只有必要的最小秘密会暴露给容器,而不是秘密的完整内容。
最后,沙冉雅纳强调了在不给与完全根访问权限的情况下需要授予提升的Linux能力的问题,这是一种非常危险的做法。ECS支持基于每个容器的添加和删除细粒度的Linux能力(如SYS_TRACE),以便只提供必要的最小特权。这种方式比以特权模式运行容器更加安全。
最后,她解释了一种通过ECS资源标签结合IAM策略来实现更精细访问控制的方法,如针对集群、任务和服务的标记。通过这些限制性的IAM策略,可以强制在资源创建、删除和读取时应用标签。这种管理方式有助于防止意外或故意对生产资源的修改。
总的来说,Sharanya强调,ECS提供了最成熟且最全面的一流容器安全功能,可与数十个亚马逊云科技服务无缝集成。这使得组织能够在数千到数百万的任务中为容器工作负载提供跨基础设施、网络、身份、密钥、监控等方面的端到端保护。她再次强调,亚马逊云科技和ECS将安全性视为最高优先事项,不容妥协。经过一些最注重安全的客户的规模测试,该服务已经证明了其安全性。ECS通过多层隔离、最小权限访问、加密、审计等多种防护措施来提供深度防御。像Canva这样的公司广泛依赖这些企业级安全功能,以在大规模上自信地运行关键业务应用程序。
简而言之,这次内容丰富讲座全面介绍了ECS架构,并深入探讨了现实客户的使用情况和安全功能。通过Canva等实际案例,展示了ECS如何与广泛的亚马逊云科技安全服务无缝集成,以实现任何规模或重要性的容器工作负载的端到端保护。与会者了解了如何利用ECS的功能来强化容器环境,并在大规模上保护敏感客户数据。
下面是一些演讲现场的精彩瞬间:
艾克森科技公司的高级产品经理斯皮罗斯·西奥多西欧(Spiros Theodosiou)与高级软件开发工程师莎拉娜(Sharana)共同出席了亚马逊云科技re:Invent的演讲活动。
亚马逊云科技为诸如Canva之类的ECS客户提供了强大的安全功能,包括用户验证、授权、加密以及网络安全防护等。
作为一家符合主要监管标准的公司,亚马逊ECS让客户能够安全地将其容器化应用程序迁移至云端。
Fargate技术实现了任务级别的隔离,每个任务都有独立的计算、存储、网络和补丁,从而降低了攻击范围并将任务相互区分,避免资源共享。
Fargate能自动终止易受攻击的任务,并在更新后的平台上启动替代任务,以提高安全性。
此外,亚马逊云科技的Auto Scaling和容量提供商功能允许通过滚动AMI更新或使用新容量提供者来启动具有最新安全更新的ECS任务。
演讲者在演讲结束时感谢观众的参与,并邀请大家通过会议调查提问和提供反馈。
总结
亚马逊ECS是一种完全托管的容器编排服务,让顾客可以轻松部署、管理和扩展容器化应用程序。由于其容器化的特性,ECS在设计时就提供了强大的资源隔离和分隔。ECS可以以两种模式部署:EC2和Fargate。当使用EC2时,隔离发生在实例级别;而Fargate则在任务级别提供了更严格的隔离。
在本次演讲中,我们将重点关注ECS的一些关键安全功能:
-
修补和更新:Fargate会自动处理这个问题,而EC2则需要更新镜像。自动缩放可以帮助实现滚动更新。
-
任务IAM角色:提供凭证隔离以及对ECS任务的审计。可以为任务分配IAM权限,以便安全地访问其他亚马逊服务。
-
任务网络:提供与专用ENI、安全组和VPC流量日志类似的网络隔离。用于控制服务之间的通信。
-
密钥管理:敏感数据(如密码)可以通过Parameter Store和Secrets Manager而非明文安全地传递给容器。
-
Linux能力:可以在没有完整根访问的情况下授予容器的细粒度提升特权。
-
资源标签:IAM策略可以根据应用于集群和任务等ECS资源的标签来控制访问。
从设计之初,ECS就充分考虑了安全性,并在整个架构的所有层次上不断扩大保护。与其他亚马逊服务的紧密集成以及符合主要法规标准使得ECS成为了一个成熟、健壮和安全可靠的容器管理平台。
演讲原文
想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!
2023亚马逊云科技re:Invent全球大会 - 官方网站
点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!
点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!
即刻注册亚马逊云科技账户,开启云端之旅!
【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”
亚马逊云科技是谁?
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。