本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
连接远程 A2A 代理
远程代理通过将任务委托给实现 Agent-to-Agent (A2A) 协议的外部代理来扩展 AWS DevOps 代理的调查能力。当您连接远程代理时, AWS DevOps 代理可以为其分配调查子任务,并将其结果纳入整个调查中。本指南介绍如何将远程 AWS DevOps 代理连接到代理。
要求
在连接远程代理之前,请确保您的代理满足以下要求:
A2A 协议支持 — 您的代理必须实现 Agent-to-Agent (A2A) 协议(JSONRPC 或 HTTP+JSON 绑定)
,并在可访问的 URL 上提供有效的代理卡。代理卡告诉 AWS DevOps 代理如何与您的代理沟通。用于调用代理的身份验证凭证用于获取代理卡。以下代理卡字段为必填字段: 姓名-用于标识您的代理的唯一名称
描述-对您的代理能力的描述。 AWS DevOps 代理使用它来确定哪个远程代理最适合给定的子任务
s@@ upportedInter faces — 声明调用端点 URL、协议绑定(
JSONRPC或HTTP+JSON)和协议版本功能 — 表示您的代理是否支持流式传输响应的对象
技能-描述代理特定能力的数组。 AWS DevOps 代理使用技能将任务路由到最合适的远程代理
身份验证支持-您的远程代理必须支持以下身份验证方法之一:持有者令牌、OAuth 客户端凭证、API 密钥或 AWS 签名版本 4 (Sigv4)。
安全注意事项
将远程代理连接到 AWS DevOps 代理时,请考虑以下安全方面:
Read-only 代理 — 远程代理的设计应仅用于调查和数据收集。确保远程代理不对生产系统执行写入操作或修改。
即时注入风险 — 远程代理可能会带来额外的即时注入攻击风险。有关更多信息,请参见提示注入保护: AWS DevOps 客户端安全。
有关即时注入和责任共担模型的更多信息,请参阅AWS DevOps 代理安全。
注册远程代理(账户级别)
远程代理在 AWS 账户级别注册,并在该账户中的所有代理空间之间共享。
步骤 1:配置远程代理
登录 AWS 管理控制台
导航到 AWS DevOps 代理控制台
转到能力提供者页面(可从侧面导航栏访问)
在 “可用提供商” 部分中找到 “远程代理”,然后单击 “注册”
在配置远程代理页面上,输入代理详细信息和身份验证配置:
代理详情:
名称-此远程代理的唯一名称
代理卡端点-远程代理的代理卡的 HTTPS URL。 AWS DevOps 代理获取此 URL 以发现代理的功能并调用端点。
描述(可选)-添加描述以帮助确定代理的用途
身份验证方法:
选择以下身份验证方法之一:
API 密钥 — 使用在自定义标头中发送的静态 API 密钥进行身份验证:
API 密钥名称 — API 密钥的用户友好名称
API 密钥标头-服务期望的标头名称(例如,
x-api-key)API 密钥值 — 用于通过服务进行身份验证的 API 密钥值
不记名令牌 — 使用不记名令牌进行身份验证 (RFC 6750):
代币-持有者代币的价值
OAuth 客户端凭证-使用 OAuth 2.0 客户端凭据授权流程进行身份验证:
客户端 ID-输入 OAuth 客户端的客户端 ID
客户端密钥-输入 OAuth 客户端的客户端密钥
交换网址-输入 OAuth 令牌交换端点网址
添加范围-为身份验证添加 OAuth 作用域
AWS Sigv4 — 使用 AWS 签名版本 4 进行身份验证:
配置 IAM 角色-选择以下选项之一:
使用现有角色-从下拉列表中选择现有 IAM 角色。该角色必须具有允许 AWS DevOps 代理服务委托人代入该角色的信任策略(请参阅为 Sigv4 身份验证创建 IAM 角色)。
手动创建新角色-按照控制台中显示的分步说明创建具有正确信任策略的新 IAM 角色。
AWS 区域-输入 Sigv4 签名的 AWS 区域(例如,)
us-east-1服务名称-输入 Sigv4 签名的 AWS 服务名称(例如,对于 API Gateway,对于 Amazon Bedrock,
execute-api对于bedrock-agentcoreAmazon Bedrock) AgentCore单击下一步
第 2 步:查看并注册
查看所有远程代理配置详细信息
单击 “注册” 完成注册
AWS DevOps 代理将通过获取您的代理卡来验证连接
成功验证后,您的远程代理将在账户级别注册
将远程代理与代理空间关联
在账户级别注册远程代理后,您可以将其与特定的代理空间相关联:
在 AWS DevOps 代理控制台中,选择您的代理空间
前往 “功能” 选项卡
在 “远程代理” 部分,单击 “添加”
选择要连接到此代理空间的已注册远程代理
单击 “添加” 将远程代理与您的代理空间关联
AWS DevOps 现在,代理可以将调查子任务委托给此代理空间中的远程代理。
管理远程代理连接
查看已连接的代理-要查看连接到您的代理空间的所有远程代理,请选择您的代理空间,转到 “功能” 选项卡,然后查看 “远程代理” 部分。
移除远程代理连接-要断开远程代理与代理空间的连接,请在 “远程代理” 部分中选择该代理,然后单击 “删除”。要完全删除远程代理注册,请先将其从所有代理空间中删除,然后导航到 “功能提供者” 并单击 “取消注册”。
更新身份验证凭证-如果需要更新身份验证凭据,则需要重新注册远程代理。导航到 AWS DevOps 代理控制台中的 “功能提供者” 页面,找到您的远程代理,删除所有活动关联,然后单击 “取消注册”。接下来,使用新的身份验证凭据注册您的远程代理,并与您的代理空间重新创建所有必要的关联。