概述
现代化应用的高速发展使开发人员能够构建高度解耦的基于微服务的架构。然而,这些架构的分布式特性同时也带来了一系列的运维挑战。开发团队需要一直负责应用环境安全的各个方面,如网络安全、IAM 权限、TLS 证书和代码漏洞扫描。在数十甚至上百个微服务的规模下处理这些安全问题,高度自动化变得尤为重要。
在容器中运行应用程序是构建微服务的常用方法。该方法允许开发人员使用同样的持续集成流水线来构建应用程序,而无需关心是使用 Amazon EKS、Amazon ECS 还是 AWS Lambda 来运行应用程序。同时,无论使用何种编程语言开发应用程序,最终的可部署对象都是一个包含应用程序代码及其依赖项的容器镜像。因此,应用程序开发团队必须扫描这些镜像中的漏洞,以确保它们在部署到云环境之前的安全性。Amazon ECR 是一个支持 OCI 规范的制品库,提供由 Amazon Inspector 支持的两种镜像扫描类型:基本扫描和增强扫描。镜像扫描一般发生在容器镜像被推送到制品库之后。基本扫描会在新镜像推送之后自动触发,而增强扫描则会持续对托管在 Amazon ECR 中的镜像进行扫描。两种类型的扫描都会生成扫描报告,但开发团队仍需要采取一系列的行动,其中包括阅读报告、了解漏洞、修改代码、提交拉取请求、合并代码、并再次运行持续集成流水线。下面将说明如何利用生成式人工智能和事件驱动的无服务器架构组成的解决方案来自动化这一过程。