AgentCore 身份特征
AgentCore Identity 提供了一系列功能,旨在应对工作负载身份管理和凭据安全方面的独特挑战:
集中式代理身份管理
通过统一的目录服务创建、管理和组织代理和工作负载身份,该服务充当组织内所有代理身份的单一事实来源。每个代理都会收到一个具有相关元数据的唯一身份(例如姓名、ARN、OAuth 返回网址、创建时间、上次更新时间),可以在整个组织中集中管理这些元数据。代理身份目录的功能与 Cognito 用户池类似,它提供了一个管理单元,允许管理员在一组常见的代理身份中配置策略。代理身份作为具有代理特定属性和功能的专用工作负载身份进行管理。有关创建和管理代理身份的详细过程,请参阅使用 Identity 管理工作负载身 AgentCore 份。
集中式方法消除了跨不同环境和系统管理代理身份的复杂性。无论您的代理是在运行 AgentCore 时、自托管环境还是混合部署上运行,无论您的代理部署在何处,该服务都能提供一致的身份管理。每个代理身份都会收到一个唯一的 ARN(例如arn:aws:bedrock-agentcore:region:account:workload-identity/directory/default/workload-identity/agent-name),可实现精确的访问控制和资源管理。这种集中化还支持分层组织和基于群组的访问控制,从而更轻松地实施企业范围的治理策略并保持所有代理操作的合规性。ARN 路径中的分层结构(带有 directory/default /workload-identity/agent-name 组件)允许管理员以逻辑方式组织代理并在层次结构的不同级别应用策略(例如,针对特定目录中的所有代理或具有相似属性的代理),而不必单独管理每个代理身份。
安全的凭证存储
令牌库为存储 OAuth 2.0 令牌、OAuth 客户端凭证和 API 密钥提供安全性,并对静态和传输过程进行全面加密。所有凭证均使用客户管理或服务托管的 AWS KMS 密钥进行加密,并进行访问控制,以防止未经授权的检索。该保管库实施了严格的访问控制,确保只有授权代理出于特定目的并且只有在他们出示可验证的工作负载身份证明时才能访问证书。
在 OAuth 2.0 基于范围的安全模型的基础上,令牌库实施了额外的安全措施,即每个访问请求都将独立验证,即使来自同一信任域内的调用者也是如此。这种额外的安全机制对于保护最终用户数据免受恶意或行为不端的代理代码的侵害是必要的。该保管库可以安全地存储 OAuth 2.0 令牌,从而降低安全风险,同时改善您的整体安全状况。
OAuth 2.0 流量支持
OAuth 2.0 客户端凭证授予(机器对机器)和 OAuth 2.0 授权码授予(用户委托访问权限)流程的原生支持,可为不同的用例提供全面的身份验证模式。该服务可以处理 OAuth 2.0 实现的复杂性,同时为代理提供简单的 API 来访问 AWS 资源和第三方服务。对于 2LO 流程,代理无需用户交互即可直接通过资源服务器进行身份验证,而 3LO 流程则允许用户明确同意和授权访问来自外部服务的用户特定数据。
该服务还为谷歌、 GitHub Slack、Salesforce和Atlassian(Jira)等热门服务提供了内置的OAuth 2.0凭证提供商,并预先填充了授权服务器端点和提供商特定的参数,以减少开发工作量。对于自定义集成,该服务支持可配置的 OAuth 2.0 凭据提供程序,可以对其进行定制,以与任何兼容 OAuth 2.0 的资源服务器配合使用。这种全面的 OAuth 2.0 支持消除了代理开发人员实施复杂授权流程的繁重负担,并降低了自定义实现中出现安全漏洞的风险。有关配置这些提供商的全面信息,请参阅配置凭据提供程序。
代理身份和访问控制
AgentCore Identity 支持模拟流程,在该流程中,代理可以使用提供给他们的凭据访问资源。这种方法使代理能够代表用户执行操作,同时维护审计跟踪和访问控制。模拟过程允许代理使用提供的凭证访问资源,并根据这些凭据做出授权决定。
AgentCore SDK 集成
通过 @requires_access_token 和 @requires_api_key 等声明性注释与 AgentCore SDK 无缝集成,可自动处理凭据检索和注入,从而减少样板代码和潜在的安全漏洞。这些注解使开发人员无需手动实现复杂的 OAuth 流程,而是提供了一个简单的声明式接口,可以抽象出令牌管理和凭证处理的底层复杂性。
SDK 集成还为令牌到期和用户同意要求等常见场景提供自动错误处理。当令牌过期或需要用户同意时,SDK 会自动生成相应的授权网址并处理 OAuth 流程编排,为开发者提供简单的成功或失败响应。这种集成可显著缩短开发时间和出现安全漏洞的可能性,同时确保所有凭证操作都遵循安全最佳实践。
请求验证安全
该服务实现对所有请求的验证,包括令牌签名验证、到期检查和范围验证。
通过将每个请求视为需要验证并需要明确的授权证明,该服务对每个请求实施安全验证。所有操作都记录在详细的上下文中,用于安全监控和合规性报告,从而提供对代理活动的可见性。
这些功能相结合,为部署 AI 代理的组织提供了显著的好处:
-
降低安全风险:集中式凭据管理无需在代理代码或配置文件中嵌入机密。
-
简化开发:声明式 API 和 SDK 集成降低了在代理应用程序中实现安全身份验证的复杂性。
-
增强合规性:全面的审计跟踪和访问控制支持监管合规性要求。
-
运营效率:自动刷新凭证可减少运营开销,同时改善安全状况。