2023无服务器架构设计安全.docx

上传人:王** 文档编号:1128392 上传时间:2024-04-02 格式:DOCX 页数:71 大小:495.20KB
下载 相关 举报
2023无服务器架构设计安全.docx_第1页
第1页 / 共71页
2023无服务器架构设计安全.docx_第2页
第2页 / 共71页
2023无服务器架构设计安全.docx_第3页
第3页 / 共71页
2023无服务器架构设计安全.docx_第4页
第4页 / 共71页
2023无服务器架构设计安全.docx_第5页
第5页 / 共71页
2023无服务器架构设计安全.docx_第6页
第6页 / 共71页
2023无服务器架构设计安全.docx_第7页
第7页 / 共71页
2023无服务器架构设计安全.docx_第8页
第8页 / 共71页
2023无服务器架构设计安全.docx_第9页
第9页 / 共71页
2023无服务器架构设计安全.docx_第10页
第10页 / 共71页
亲,该文档总共71页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《2023无服务器架构设计安全.docx》由会员分享,可在线阅读,更多相关《2023无服务器架构设计安全.docx(71页珍藏版)》请在优知文库上搜索。

1、无服务器架构设计安全2022目录1 .介绍61.1 目的和范围61.2 受众72 .什么是无服务器83 .为什么选择无服务器123.1 无服务器架构的优势和收益133.2 无服务器的共享责任模型143.3 什么时候适合无服务器144 .使用用例和举例155 .无服务器安全威胁模型185.1 无服务器一一场全新的安全博弈?185.2 无服务器威胁形势195.3 威胁模型一25项无服务器应用程序所有者面临的威胁225.4 无服务器威胁的独特性276 .安全设计、控制以及最佳实践346.1 无服务器设计注意事项366.2 针对FaaS的控制426.3 CI-CD流水线、函数代码、代码扫描以及函数和容

2、器的策略实施436.4 基于容器镜像的无服务器增量/附加控制476.5 合规和治理637 .无服务器架构安全的未来愿景667.1 无服务器架构的未来之路677.2 无服务器架构安全697.3 无服务器在数据隐私方面的进展718 .总结729 .参考文献73附录1:首字母缩略词75附录2:术语表77执行摘要无服务器平台使开发人员能够更快地开发和部署应用,用一种简单的方式将应用迁移到云原生服务上,而无需再管理容器集群或虚拟机等基础设施。随着企业努力更快地将技术价值推向市场,无服务器平台正逐渐获得开发人员的青睐。像任何解决方案一样,无服务器带来了各种各样的网络风险。本文探讨了无服务器应用的安全性,聚

3、焦于最佳实践和建议。本文全面概括了不同威胁,重点关注无服务器平台面临的应用程序所有者风险,并提供了适当的安全控制建议。从部署的角度来看,采用无服务器架构的组织可以专注于产品核心功能,而不必考虑负载平衡、监控、可用性、冗余和安全方面的工作来管理和控制平台或计算资源。无服务器方案本质上是可扩展的,并为“即用即付”范式提供了大量的最优计算资源。止匕外,从软件开发的角度来看,采用无服务器架构的组织可以获得一种全新的部署模型,在该模型下,组织不再需要管理和控制底层操作系统、应用服务器或软件运行时环境。因此,这样的组织可以在更短的时间内部署服务并交付给市场,并降低总体运营成本。本文的建议和最佳实践是通过在

4、信息安全、云运营、应用程序容器和微服务方面具有广泛知识和实践经验的多元化团队间相互协作制定的。这些信息适用于在无服务器环境中可能负有一定责任的受众。1 .介绍1.1 目的和范围本文的目的是提供实现安全无服务器方案的最佳实践和建议。无服务器服务涉及两种角色:服务/平台提供者一一无服务器平台的提供者,可在此基础上构建无服务器应用;应用程序所有者一一无服务器方案的用户,他们的应用运行在无服务器平台上。基于无服务器方案,服务提供者提供弹性自动分配的计算资源,以满足不同可执行体的需求,不需要用户控制每个可执行体所需的资源。本文的范围限于一个部门基于其他部门作为平台提供者提供的无服务器解决方案来运行他们的

5、工作负载。无服务器的实现既包括基于容器镜像的无服务器(也称为容器即服务Container-as-service),也包括基于函数的无服务器(也称为函数即服务FaaS)0在本文中,我们将更多地关注应用程序所有者,并考虑在使用无服务器服务时对应用的威胁。然后,我们对安全最佳实践提出了具体的建议,并列出了应用程序所有者应采用的建议控制措施。由于其他材料中有很多关于保护不同云服务的细节,本文将只关注由于迁移到无服务器服务而引发的变化,避免详细阐述通用的云安全。本文的主要目标是提出并推进基于无服务器的安全云计算执行模型。其目的还在于指导应用程序所有者如何采用无服务器架构。1.2 受众本文主要适用于应用开

6、发人员、应用架构师、安全专业人员、首席信息安全官(CIS0)、风险管理专业人员、系统与安全管理员、安全项目经理、信息系统安全官以及任何对无服务器计算安全感兴趣的人。本文假设读者有一定的编码实践、安全和网络专业知识,以及应用容器、微服务、函数和敏捷应用开发知识。由于无服务器领域技术在不断变化,鼓励读者利用其他资源(包括本文中列出的资源)获取最新和详细信息。鼓励读者遵循与安全软件设计、开发和部署相关的行业标准实践2 .什么是无服务器1)无服务器定义无服务器计算是一种云计算运行模型,在该模型中,云提供者负责为应用程序所有者的工作负载分配所需的计算和基础设施资源。应用程序所有者在任何时间都不再需要确定

7、和控制分配多少计算资源(以及体量)来服务于他们的工作负载。它可以凭借大量的计算资源为工作负载提供按需服务。无服务器计算基于“即用即付”范式提出,在这种范式下,支付通常和实际的物理资源(如CPU)使用量有关。使用无服务器的应用程序所有者使用服务提供者提供的能执行(调用、触发)的“可调用单元”,以及一组可调用单元执行(调用、触发)需要的“事件”。应用程序所有者还可以提供支持的代码在可调用单元运行。支持代码可以作为库提供,又称为“层”,可以在运行函数的上下文中运行(作为同一进程的一部分);也可以作为“扩展”或可以在同一环境中运行的支撑线程/进程(与可调用单元不同的进程)。“层”和“扩展”共享分配给函

8、数的相同资源,并在同样的上下文中运行。注意,“无服务器”这个名称只适用于使用该服务的应用程序所有者所经历的行为。在底层,执行代码的服务器仍然存在,但从应用程序所有者那里抽象出来。2)可调用单元不同的无服务器解决方案为可调用单元提供了一系列选项。一个常见的服务选项是使应用程序所有者能够在服务提供者支持的运行态(JavaScriptPythonJaVa等)中提供函数代码。这种服务在业界被称为“函数即服务”或FaaSo在FaaS下,应用程序所有者提供的函数代码通常嵌入到由服务提供者掌管的容器镜像中。FaaS的扩展包括给服务提供者镜像安装额外的库,以及在镜像启动和函数执行前向容器注入数据。第二个常见选

9、项是让应用程序所有者提供其控件的容器镜像作为可调用单元。FaaS的这种扩展与非无服务器服务有很大的区别,后者的应用程序所有者提供了容器镜像,并在托管或非托管容器服务上执行。下表强调了这一区别。在基于镜像的无服务器模式下,服务提供者负责实现正确数量的可调用单元实例,以响应任何给定时间的事件。无服务器(本文涉及)微服务非无服务器(本文未涉及)名称基于函数的无服务器基于容器的无服务器托管容器服务Kubernetes服务由应用程序所有者交付可调用单元函数是否存在依赖容器镜像依赖特定编程语言因所有二进制文件和依赖项都已打包,可独立于代码语言运行应用。控制可执行体的可扩展性、负载均衡、冗余度和监控实例服务

10、提供者应用程序所有者控制实例可用性和冗余度服务提供者控制实例的可用性和冗余度应用程序所有者底层服务器的生命周期和扩展性服务提供者控制实例的可用性和冗余度应用程序所有者执行时间通常很短(秒级或更短)。一般限制在几分钟。通常是长期和无限的。状态无状态和瞬时的一一所有状态主要在可调用单元外维护通常情况下微服务是无状态的,但可以在挂载的卷中维护状态扩展计算服务提供者负责应用程序所有者负责支付模式即用即付为已分配资源付费运行时责任服务提供者应用程序所有者例子AWSLambdaAzureFunctionGoogleCloudFunctionsIBMCloudFunctionsAWSFargateGoogl

11、eCloudRunIBMCodeEngineAWSECSRedHatOpenshift(基于AWS/Azure/.)AWSEKSGoogleGKEAzureAKSIBMIKS在基于函数的无服务器(也称为“无服务器函数“)下,镜像由服务提供者拥有和控制,这将保证镜像安全的责任留给了服务提供者。因此,服务提供者必须适当控制,以减轻镜像给应用程序所有者工作负载造成的任何风险(请参见本文5.3中的“服务提供者控制的安全风险在基于容器镜像的无服务器(也称为“无服务器容器”)下,镜像由应用程序所有者拥有和控制,这将保证镜像安全的责任留给了应用程序所有者。因此,应用程序所有者需要适当控制,以减轻从镜像到其工

12、作负载的风险(请参见本文5.3中的“应用程序所有者设置阶段威胁”)。3)事件事件是在无服务器环境中可能导致特定函数被触发的条件一一它可能包括新的附加数据、接收到的新数据包,或者只是不同周期阶段的过期终结。除了可调用单元之外,事件驱动型应用程序的所有者还可以向服务提供者者提供一组事件,从而定义何时需要执行可调用单元的实例来处理事件。服务提供者负责对事件排队,初始化充足的可调用单元的模型,并根据服务级别协议,在约定的时间内可调用单元处理完成每个事件。事件的实际处理时间被累计用于计费。事件因事件的来源和事件的类型而有所不同。如定时器事件、Web请求触发的事件、由存储器或数据库中的数据的变化触发的事件

13、、由云帐户的服务之间或用户与云帐户的服务之间的交互触发的事件、来自事件服务的事件、云帐户中的监控服务或日志服务的事件等。4)无服务器安全概述无服务器安全带来了一种新的安全范式:应用程序所有者除了保护数据之外,只负责应用的保护。所有管理服务器或其安全方面,包括启动、机器操作系统(OS)打补丁、更新和降级,都由无服务器平台提供者管理,从而使应用程序所有者能够专注于应用本身,而不用再费心于基础设施。但是,正如本文稍后在讨论应用程序所有者需要考虑的威胁时将详细介绍的那样,无服务器也引入了它自己的安全挑战。为了更好地解释平台提供者和应用程序所有者之间对不同模型的共享责任,我们绘制了下面的图。无服务器责任

14、模型详图:应用程序所有者的 安全团队基于函数的无服务器(FaaS)共享责任模型应用程序所有者的 安全团队服务提供者的安全团队基于镜像的无服务器共享责任模型由于基于函数的无服务器可以特定于操作/运行时环境,因此平台提供者承担了维护和更新不同版本和编程语言的责任。5)混合无服务器架构(私有和公有)业界存在许多无服务器架构,以下常见的基础设施示例有(部分): 亚马逊:Lambda,Fargate,AWSBatch 谷歌:CloudFunctions,KnativezCloudRun 微软:AzureFunctions,AzureContainerInstances Nimbella:OpenWhis

15、k IBM:Kortine(代码引擎)、OpenWhisk(CloudFunctions) 红帽:KOitine(OPenShift的一部分)3 .为什么选择无服务器与传统的基于云的或以服务器为中心的基础设施相比,无服务器计算有几个优势。在无服务器计算中,应用程序所有者通常不需要关心托管其应用的基础设施,包括应用运行的操作系统的维护和补丁或基础设施扩容。这能降低大量的运营成本。ManraL2021此外,应用代码是在动态平台上承载和运行的:特定代码可能运行在许多物理机器上,但无服务器平台通常具有动态缩放功能。3.1 无服务器架构的优势和收益下表介绍了无服务器架构的几大优势,以方便读者阅读。无服务器架构可提供的优势本文讨论的无服务器架构部署速度无服务器使应用程序所有者专注开发业务应用,而不用关心应用基础设施,使业务能够快速构建和部署应用。因此,它是一个很好的实验工具,可为市场更快地带来新价值。成本基础设施成本: 通常按每个事件计费,这意味着当不使用基础设施时,不需要付费

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 服务器

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!