亚马逊云科技-reInforce使用GenAI创建更安全应用
关键字: [yt, Generative Ai Security, Secure Application Development, Code Security Analysis, Amazon Web Services Security Best Practices, Documentation Generation With Ai]
本文字数: 400, 阅读完需: 2 分钟
导读
在这场演讲中,Brian Beach 探讨了亚马逊的生成式人工智能服务 CodeWhisperer 如何助力构建更加安全的应用程序。他阐释了 CodeWhisperer 能够在安全工程师的整个工作流程中提供支持,包括理解审计结果、审阅亚马逊云科技最佳实践、扫描代码中的漏洞、实施安全修复以及生成文档。该演讲重点阐述了 CodeWhisperer 如何加快安全审查进程、更高效地解决安全问题,从而提升整体应用程序安全性。
演讲精华
以下是小编为您整理的本次演讲的精华,共100字,阅读时间大约是0分钟。
在这场精彩的演讲中,Brian Beach作为亚马逊云科技下一代开发者体验社区的技术主管,分享了他们如何利用生成式人工智能(GenAI)帮助客户创建更加安全的应用程序。Brian首先强调了生成式AI在企业中的广泛应用前景,根据Gartner的数据,在未来两年内,80%的企业将采用并构建基于生成式AI的解决方案。这一数字可能还有些保守,因为Brian感受到每个人都在谈论并使用生成式AI。
为了满足这一需求,亚马逊云科技已经推出了一系列服务和功能,从底层的GPU实例到更高层次的托管模型服务,再到应用层解决方案。在基础层,亚马逊云科技提供了来自NVIDIA、其他第三方供应商以及自有品牌的GPU实例,用户可以在这些实例上进行模型的托管、构建和训练,但需要承担大量的无差异化工作,如服务器的安全补丁和管理。
为了简化这一过程,亚马逊云科技在去年推出了Bedrock服务,使得托管模型变得非常容易。用户仍然可以选择不同的模型、向量数据库和嵌入模型,但无需再担心无差异化的重复工作。不过,亚马逊云科技希望在此基础上构建另一层解决方案,于是在2023年底的re:Invent大会上推出了Amazon CodeWhisperer。
CodeWhisperer包含了多种不同的功能,旨在解决亚马逊云科技观察到客户在使用Bedrock时遇到的各种痛点。在本次演讲中,Brian将重点介绍两个CodeWhisperer产品:Amazon CodeWhisperer Developer和Amazon CodeWhisperer Business。
Amazon CodeWhisperer Developer顾名思义,是一系列帮助开发人员提高工作效率的功能。但它不仅限于开发人员,还包括支持开发人员的安全工程师、运维人员等角色。Brian将在后续的演示中着重探讨这一产品。
另一个产品Amazon CodeWhisperer Business则允许企业将自身的知识库整合进来,以便进行查询和生成内容。通常情况下,企业可以使用它来构建HR政策解决方案或旅行政策解决方案,让员工可以提出相关的问题并获得答复。在本次演讲中,Brian将重点关注如何使用它来实现IT安全政策、治理和云中心卓越中心的目标。
最后,Brian强调亚马逊云科技正在将CodeWhisperer功能集成到用户与亚马逊云科技交互的各个场景中。无论是在文档、控制台还是IDE中,CodeWhisperer都在那里为用户提供帮助,加快浏览文档、设置服务、故障排查和编写代码的速度,帮助用户更高效地完成工作。
接下来,Brian进行了一个现场演示,模拟了一位安全工程师在审查和修复一个电子商务应用程序的评分系统时,如何利用CodeWhisperer加快工作进度。在这个场景中,Brian扮演安全工程师的角色,假设他们正在构建一个电子商务应用程序,并且最近的一次审计发现了评分系统存在问题,有一些虚假评论导致系统失衡。他们的工作是对该应用程序进行安全审查并修复这一问题。
Brian假设这是一个使用TypeScript编写、在ECS上运行的应用程序。同时,由于他不是亚马逊云科技专家,在这个过程中也需要学习相关的亚马逊云科技知识。我们可以看到,生成式AI如何在这种情况下为他提供帮助。
首先,Brian需要更多地了解这一情况,包括应用程序本身以及已报告的问题。他从审计结果报告开始,发现由于未能正确验证产品输入,导致出现了虚假评论,破坏了与客户的信任。审计人员建议加强用户身份验证和内容验证,甚至对评分范围进行验证,确保在1到5星之间。
为了更好地理解这一问题,Brian使用了Amazon CodeWhisperer Business。他询问是否还有其他已报告的相关问题,CodeWhisperer回答说,过去几年一直存在不当语言、不当图像和广告渗透的问题,但一直被忽视。值得注意的是,这些信息来自Jira,说明CodeWhisperer已经爬取并学习了Brian公司的内部系统和知识库。
接下来,Brian询问该应用程序中的身份验证机制是如何工作的。CodeWhisperer回答说,实际上它没有向用户开放,而是一个受信任的内部子系统,因此当初决定不对其进行身份验证。不过从现在的角度来看,这可能是一个错误的决策。这一次,信息来自Confluence,说明CodeWhisperer不仅爬取了Jira,还整合了Confluence等其他内部知识源。
通过这些简单的交互,Brian就很快了解到,他们当前所面临的是一个严重的问题,多年来一直在忽视安全性,因此需要做大量的工作来加以修复。
由于Brian不是亚马逊云科技专家,他决定先学习一下亚马逊云科技的安全最佳实践。如果你曾经在谷歌上搜索过这个话题,可能会发现亚马逊云科技架构中心有大量关于安全最佳实践的文档,数以万计的页面,让人不知所措。幸运的是,CodeWhisperer也集成在这个体验中,Brian可以直接向它提出问题:“我们被要求进行安全审查,应该从哪里开始?”
CodeWhisperer思考了一会儿,回答说可以查看ECS用户指南、安全最佳实践文档,或者直接查看任务定义。它不仅指出了相关资源,还提供了链接,让Brian可以快速定位到需要的信息,而不必逐字逐句地阅读成千上万页的文档。
Brian继续询问如何进行容器扫描,CodeWhisperer指出亚马逊云科技的ECR服务内置了这一功能。于是,Brian跟随它的建议,进入亚马逊云科技控制台,查看了他们的”评分微服务”的容器扫描结果。不出所料,开发人员一直在忽视这些问题,有大量的发现,有的甚至可以追溯到2020年。而且,其中许多发现都与Brian实际上并不使用的操作系统包相关。
为了解决这个问题,Brian再次向CodeWhisperer寻求建议,询问如何处理这些与未使用的包相关的发现。CodeWhisperer建议剪枝并清理这些发现,同时还建议使用更小的基础镜像,比如Amazon Linux或Alpine。
转换代理(Transform Agent)能够协助将代码从旧语言或框架升级至新版本,减少技术债务的累积。例如,它可自动将Python 2代码升级至Python 3,为print语句添加括号等。
参考跟踪(Reference Tracking)功能能够追踪CodeWhisperer生成的代码是否源自开源项目,如果是,它会提供相关许可信息和链接,让用户决定是否需要引用原始项目。这有助于保护知识产权。
定制(Customization)功能允许CodeWhisperer学习企业内部的代码库和库,从而为用户提供更加准确和相关的建议。用户只需将CodeWhisperer指向自己的Git存储库,它就会学习那里的代码。
总的来说,Brian的演示生动展现了CodeWhisperer如何通过自然语言交互、代码分析和生成等功能,为安全工程师提供全方位的辅助,加快安全审查、代码修复和文档生成等工作流程,帮助企业更高效地创建更加安全的应用程序。CodeWhisperer不仅能够快速发现代码中的安全漏洞,还能提供修复建议并支持自动重构代码;它还能根据代码自动生成文档,节省大量人力。通过与CodeWhisperer的交互式协作,开发人员和安全工程师可以极大提高工作效率,减轻重复劳动,专注于更有价值的工作。
总结
- CodeWhisperer 能够通过从 Jira 和 Confluence 等来源摄取组织知识,快速掌握应用程序的上下文环境。
- 它可以指导开发人员浏览亚马逊云科技文档和控制台体验,简化学习过程和配置任务。
- CodeWhisperer 可以扫描代码、识别安全漏洞,并建议修复步骤,包括为安全实现生成代码。
总的来说,利用 CodeWhisperer 等生成式人工智能工具,能够加速安全应用程序开发、减少技术债务,并跟上最佳实践,最终使开发人员和安全工程师能够在亚马逊云科技上更高效、更安全地工作。
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者。提供200多类广泛而深入的云服务,服务全球245个国家和地区的数百万客户。亚马逊云科技致力于成为企业构建和应用生成式AI的首选,通过生成式AI技术栈,提供用于模型训练和推理的基础设施服务、构建生成式AI应用的大模型等工具、以及开箱即用的生成式AI应用。深耕本地、链接全球 -- 在中国,亚马逊云科技通过安全、稳定、可信赖的云服务,助力中国企业加速数字化转型和创新,并深度参与全球化市场。
版权归原作者 taibaili2023 所有, 如有侵权,请联系我们删除。