
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
无服务器架构开发设计我们在前几期的文章中就给大家介绍过很多次了,而今天我们就通过案例分析来了解一下,无服务器架构的安全问题需要关注哪些方面。
什么是无服务器?
无服务器是虚拟化和云计算发展的结果,是指其企业完全通过租赁云供应商的资源来实现业务的模式,无服务器的核心是在架构中完全摒除硬件和后端基础软件服务(比如数据库,账号体系等),而依赖三方的云资源(BaaS或者FaaS)。
当考虑无服务器架构时候主要基于一个想法:如果并不是所有应用程序的功能都是一直要用,那么为什么要为不经常使用的服务器支付租金呢?一般来说系统都需要一些功能,如业务逻辑,用户认证系统,数据库,以及其他一些用户简短的和特定活动需要的功能。使用服务器架构,会执行和打包这一系列的功能,所以一般也将无服务器称为功能即服务(FaaS);这些服务也为后端服务,所以也叫为BaaS "Backend as a Service"。
无服务器安全
虽然云厂商会提供了很多安全服务和一些基本的安全策略,但是需要你花费购买相关服务,而且一些策略也需要自己配置。关于无服务器架构的安全我们需要注意以下事项。
保持新版本
为了确保应用程序的安全,有效方法之一是确保所有组件都是新的。使用的三方模块是否需要打安全补丁?
软件更新时候经常被忽略的问题是忘记更新组件依赖项,尤其是在应用程序中使用开源组件时。据统计有超过92%的应用程序使用的开源组件会占到其代码库的60-80%,基础开源组件的安全是不容忽视的部分。如何安全地使用开源模块与商业软件存在一些明显差异,例如在开源组件在发布新漏洞或修复程序时无法很好的跟踪其影响面,做到有效的升级通知。另一个方面是要考虑构建组件的依赖关系。如果其中一个依赖存在漏洞,则会影响整个应用程序的安全。
保持Em分离
与限制用户权限原理类似,将每个功能的网络和资源访问隔离也很重要。这条原则也被称为微分段(Micro-Segmentation),就是通过设置访问屏障的,保证我们的某功能被攻克后,不影响其他功能和节点。安全界常遵守一个常理就是"鸡蛋不能放在同一个篮子里"。
如果正如我们将数据库与另一个数据库分开一样,通过隔离不同的功能,不同的人容器,可以保证整体的安全不受部分节点的影响。
紧盯日志
一旦开始使用无服务器基础架构,就会发现架构都会变点很乱不着头脑,快速迭代的功能和业务,可能会让我们忽略一些安全问题迹象。比如发送到无服务器架构的大量请求,可能意味着功能存在漏洞功能,而你却将其忽略,没注意到。
这时候就需要注重安全和日志了。
熟悉无服务器架构(其他一些架构也类似)很好的工具是浏览和系统日志。解决无服务器安全挑战的一步就是维护和分析日志,识别执行日志中的异常情况。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!