本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
能力 1. 为开发人员和数据科学家提供对生成式 AIFMs(模型推断)的安全访问权限
以下架构图说明了为生成式 AI 账户推荐的用于此功能的AWS服务。此功能的范围是允许用户访问基础模型 (FMs) 以进行聊天和图像生成。
生成式人工智能账户致力于通过使用 Amazon Bedrock 来保护生成式人工智能功能。我们将使用本指南中的功能构建此账户(和架构图)。该账户包括用于为用户存储对话和维护即时存储的服务。该账户还包括安全服务,用于实施安全护栏和集中式安全治理。用户可以使用身份提供商 (IdP) 安全地访问生成式 AI 账户中的虚拟私有云 (VPC),从而获得联合访问权限。AWS PrivateLink 支持从您VPC到 Amazon Bedrock 终端节点服务的私有连接。您应该为模型调用日志创建 Amazon S3 网关终端节点,并提示将存储桶存储在 Amazon S3 中,VPC环境已配置为可以访问。您还应该为VPC环境配置为访问的 CloudWatch 日志创建 Amazon CloudWatch Logs 网关终端节点。
理由
授予用户对生成式 AI 的访问权限FMs使他们能够使用高级模型来完成诸如自然语言处理、图像生成以及提高效率和决策等任务。这种访问权限可以促进组织内部的创新,因为员工可以尝试新的应用程序并开发尖端的解决方案,从而最终提高工作效率并提供竞争优势。此用例对应于生成式 AI 安全范围矩阵
当你允许用户访问 Amazon Bedrock FMs 中的生成人工智能时,你应该考虑以下关键的安全注意事项:
-
安全访问模型调用、对话历史记录和提示存储库
-
对对话和提示存储进行加密
-
监控潜在的安全风险,例如及时注入或敏感信息泄露
下一节将讨论这些安全注意事项和生成式 AI 功能。
安全性注意事项
生成式 AI 工作负载面临独特的风险。例如,威胁行为者可以制作恶意查询,强制持续输出,从而导致资源消耗过多,或者制作导致模型响应不当的提示。此外,最终用户可能会在提示中输入敏感信息,从而无意中滥用这些系统。Amazon Bedrock 为数据保护、访问控制、网络安全、日志和监控以及输入/输出验证提供了强大的安全控制,可以帮助降低这些风险。以下各节将讨论这些内容。有关生成式 AI 工作负载相关风险的更多信息,请参阅开放全球应用程序安全项目 (OWASP) 网站和MITREATLAS
补救措施
身份和访问管理
不要使用IAM用户,因为他们拥有长期凭证,例如用户名和密码。相反,请在访问时使用临时证书AWS。您可以为人类用户使用身份提供商 (IdP),通过扮IAM演提供临时证书的角色来提供对AWS账户的联合访问权限。
要进行集中访问管理,请使用AWSIAM身份中心。要了解有关 IAM Identity Center 和各种架构模式的更多信息,请参阅本指南的IAM深入探讨部分。
要访问 Amazon Bedrock,您必须拥有最低限度的权限。 默认情况下,FMs不授予访问 Amazon Bedrock 的权限。 要获得对 FM 的访问权限,拥有足够权限的IAM身份必须通过 Amazon Bedrock 控制台请求访问权限。 有关如何添加、删除和控制模型访问权限的信息,请参阅 Amazon Bedrock 文档中的模型访问权限。
为了安全地提供对 Amazon Bedrock 的访问权限,请根据您的要求自定义 Amazon Bedrock 策略示例,以确保只允许所需的权限。
网络安全
AWS PrivateLink允许您使用您的私有 IP 地址连接到某些AWS服务、其他AWS账户托管的服务(称为终端节点服务)和支持的 AWS Marketplace 合作伙伴服务VPC。接口终端节点是使用弹性网络接口和子网中的 IP 地址直接在您VPC内部创建VPC的。此方法使用 Amazon VPC 安全组来管理对终端节点的访问。 用于建立从您AWS PrivateLinkVPC到 Amazon Bedrock 终端节点服务的私有连接,而不会将您的流量暴露给互联网。 PrivateLink 为您提供与 Amazon Bedrock 服务账户中API终端节点的私有连接,因此您中的实例VPC不需要公有 IP 地址即可访问 Amazon Bedrock。
日志记录和监控
启用模型调用日志。使用模型调用日志来收集账户中所有 Amazon Bedrock 模型调用的调用日志、模型输入数据和模型输出数据。AWS 默认情况下,日志记录处于禁用状态。您可以启用调用日志记录来收集与您的账户中执行的所有IAM调用相关的完整请求数据、响应数据、调用角色和元数据。
重要
您保留对调用日志数据的完全所有权和控制权,并且可以使用IAM策略和加密来确保只有经过授权的人员才能访问这些数据。AWS无论是模型提供者还是模型提供者都无法查看或访问您的数据。
配置日志记录以提供发布日志数据的目标资源。Amazon Bedrock 为亚马逊 CloudWatch 日志和亚马逊简单存储服务 (Amazon S3) Service 等目的地提供原生支持。 我们建议您将两个源配置为存储模型调用日志。
实施自动滥用检测机制,以帮助防止潜在的滥用行为,包括及时注入或敏感信息泄露。配置警报,以便在检测到潜在的滥用行为时通知管理员。这可以通过基于指标的自定义 CloudWatch指标和警报来实现。CloudWatch
使用AWS CloudTrail监控 Amazon Bedrock API 活动。考虑在提示存储库中为最终用户保存和管理常用提示。我们建议您使用 Amazon S3 作为提示存储。
设计注意事项
您必须根据自己的合规性和隐私要求来评估这种方法。模型调用日志可能会收集敏感数据作为模型输入和模型输出的一部分,这可能不适合您的用例,在某些情况下,可能无法实现您的风险合规目标。
输入和输出验证
如果您想为与 Amazon Bedrock 模型交互的用户实施适用于 Amazon Bedrock 的护栏,则需要将护栏部署到生产环境中,并在应用程序中调用护栏版本。这将需要创建和保护与 Amazon Bedrock API 接口的工作负载。
推荐的AWS服务
注意
本节中讨论的AWS服务以及其他功能的服务特定于这些部分中讨论的用例。此外,您应该在所有AWS账户中使用一组常见的安全服务,例如 AWS Security Hub、Amazon GuardDuty、AWS Config、Acc IAM ess Analyzer 和AWS CloudTrail 组织跟踪,以便在整个组织中实现一致的防护并提供集中监控、管理和治理。 要了解这些服务的功能和架构最佳实践,请参阅本指南前面的 “在所有AWS账户中部署常用安全服务” 部分。
Amazon S3
Amazon S3 是一种对象存储服务,提供可扩展性、数据可用性、安全性和性能。有关推荐的安全最佳实践,请参阅 Amazon S3 文档、在线技术讲座和博客文章中的深入探讨。
将您的模型调用日志和常用提示作为提示存储
使用版本控制进行备份,并通过 A mazon S3
Amazon CloudWatch
Amazon CloudWatch 监控应用程序,响应性能变化,优化资源使用,并提供对运行状况的见解。通过跨AWS资源收集数据, CloudWatch您可以了解整个系统的性能,并允许您设置警报,自动对变化做出反应,并获得统一的运营状况视图。
用于 CloudWatch 监控系统事件并生成警报,这些事件描述了 Amazon B edrock 和 Amaz on S3 中的变化。 配置警报,以便在提示可能提示注入或敏感信息泄露时通知管理员。这可以通过基于日志模式的自定义 CloudWatch 指标和警报来实现。使用您创建、拥有和管理的客户托管密钥对@@ CloudWatch 日志中的日志数据进行加密。为了进一步加强网络安全,您可以为配置VPC环境访问的 CloudWatch 日志创建网关终端节点。您可以使用安全 OU 安全工具账户中的 Amazon O CloudWatch bservability 访问管理器进行集中监控。使用最低权限原则管理 CloudWatch 对您的 Logs 资源的访问权限。
AWS CloudTrail
AWS CloudTrail支持对您AWS账户中的活动进行监管、合规和审计。借 CloudTrail助,您可以记录、持续监控和保留与整个AWS基础架构中的操作相关的账户活动。
CloudTrail 用于记录和监控 Amazon Bedrock 和 Amazon S3 的所有创建、读取、更新和删除 (CRUD) 操作。 有关更多信息,请参阅 Amazon Bedrock 文档中的使用 AWS CloudTrai l 记录亚马逊 Bedrock API 调用和亚马逊 S3 文档AWS CloudTrail中的使用记录亚马逊 S3 API 调用。
CloudTrail 来自 Amazon Bedrock 的日志不包含提示和完成信息。我们建议您使用组织跟踪来记录组织中所有账户的所有事件。 将生成式 AI 账户中的所有 CloudTrail 日志转发到 Security OU 日志存档账户。有了集中式日志,您可以监控、审计 Amazon S3 对象访问、身份未经授权的活动、IAM策略更改以及对敏感资源执行的其他关键活动,并生成警报。有关更多信息,请参阅中的安全最佳实践AWS CloudTrail。
Amazon Macie
Amazon Macie 是一项完全托管的数据安全和数据隐私服务,它使用机器学习和模式匹配来发现和帮助保护您的敏感数据。AWS您需要确定工作负载正在处理的数据的类型和分类,以确保实施适当的控制。Macie 可以帮助识别提示存储中的敏感数据,并对存储在 S3 存储桶中的调用日志进行建模。 您可以使用 Macie 自动发现、记录和报告 Amazon S3 中的敏感数据。您可以通过两种方式执行此操作:将 Macie 配置为执行自动敏感数据发现,以及创建和运行敏感数据发现作业。 有关更多信息,请参阅 Macie 文档中的使用 Amazon Macie 发现敏感数据。