View a markdown version of this page

连接远程 A2A 代理 - AWS DevOps 代理人

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

连接远程 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、协议绑定(JSONRPCHTTP+JSON)和协议版本

    • 功能 — 表示您的代理是否支持流式传输响应的对象

    • 技能-描述代理特定能力的数组。 AWS DevOps 代理使用技能将任务路由到最合适的远程代理

  • 身份验证支持-您的远程代理必须支持以下身份验证方法之一:持有者令牌、OAuth 客户端凭证、API 密钥或 AWS 签名版本 4 (Sigv4)。

安全注意事项

将远程代理连接到 AWS DevOps 代理时,请考虑以下安全方面:

  • Read-only 代理 — 远程代理的设计应仅用于调查和数据收集。确保远程代理不对生产系统执行写入操作或修改。

  • 即时注入风险 — 远程代理可能会带来额外的即时注入攻击风险。有关更多信息,请参见提示注入保护: AWS DevOps 客户端安全

有关即时注入和责任共担模型的更多信息,请参阅AWS DevOps 代理安全

注册远程代理(账户级别)

远程代理在 AWS 账户级别注册,并在该账户中的所有代理空间之间共享。

步骤 1:配置远程代理

  1. 登录 AWS 管理控制台

  2. 导航到 AWS DevOps 代理控制台

  3. 转到能力提供者页面(可从侧面导航栏访问)

  4. 在 “可用提供商” 部分中找到 “远程代理”,然后单击 “注册

  5. 配置远程代理页面上,输入代理详细信息和身份验证配置:

代理详情:

  • 名称-此远程代理的唯一名称

  • 代理卡端点-远程代理的代理卡的 HTTPS URL。 AWS DevOps 代理获取此 URL 以发现代理的功能并调用端点。

  • 描述(可选)-添加描述以帮助确定代理的用途

身份验证方法:

选择以下身份验证方法之一:

API 密钥 — 使用在自定义标头中发送的静态 API 密钥进行身份验证:

  1. API 密钥名称 — API 密钥的用户友好名称

  2. API 密钥标头-服务期望的标头名称(例如,x-api-key

  3. API 密钥值 — 用于通过服务进行身份验证的 API 密钥值

不记名令牌 — 使用不记名令牌进行身份验证 (RFC 6750):

  1. 代币-持有者代币的价值

OAuth 客户端凭证-使用 OAuth 2.0 客户端凭据授权流程进行身份验证:

  1. 客户端 ID-输入 OAuth 客户端的客户端 ID

  2. 客户端密钥-输入 OAuth 客户端的客户端密钥

  3. 交换网址-输入 OAuth 令牌交换端点网址

  4. 添加范围-为身份验证添加 OAuth 作用域

AWS Sigv4 — 使用 AWS 签名版本 4 进行身份验证:

  1. 配置 IAM 角色-选择以下选项之一:

    • 使用现有角色-从下拉列表中选择现有 IAM 角色。该角色必须具有允许 AWS DevOps 代理服务委托人代入该角色的信任策略(请参阅为 Sigv4 身份验证创建 IAM 角色)。

    • 手动创建新角色-按照控制台中显示的分步说明创建具有正确信任策略的新 IAM 角色。

  2. AWS 区域-输入 Sigv4 签名的 AWS 区域(例如,)us-east-1

  3. 服务名称-输入 Sigv4 签名的 AWS 服务名称(例如,对于 API Gateway,对于 Amazon Bedrock,execute-api对于 bedrock-agentcore Amazon Bedrock) AgentCore

  4. 单击下一步

第 2 步:查看并注册

  1. 查看所有远程代理配置详细信息

  2. 单击 “注册” 完成注册

  3. AWS DevOps 代理将通过获取您的代理卡来验证连接

  4. 成功验证后,您的远程代理将在账户级别注册

将远程代理与代理空间关联

在账户级别注册远程代理后,您可以将其与特定的代理空间相关联:

  1. 在 AWS DevOps 代理控制台中,选择您的代理空间

  2. 前往 “功能” 选项卡

  3. 在 “远程代理” 部分,单击 “添加

  4. 选择要连接到此代理空间的已注册远程代理

  5. 单击 “添加” 将远程代理与您的代理空间关联

AWS DevOps 现在,代理可以将调查子任务委托给此代理空间中的远程代理。

管理远程代理连接

查看已连接的代理-要查看连接到您的代理空间的所有远程代理,请选择您的代理空间,转到 “功能” 选项卡,然后查看 “远程代理” 部分。

移除远程代理连接-要断开远程代理与代理空间的连接,请在 “远程代理” 部分中选择该代理,然后单击 “删除”。要完全删除远程代理注册,请先将其从所有代理空间中删除,然后导航到 “功能提供者” 并单击 “取消注册”。

更新身份验证凭证-如果需要更新身份验证凭据,则需要重新注册远程代理。导航到 AWS DevOps 代理控制台中的 “功能提供者” 页面,找到您的远程代理,删除所有活动关联,然后单击 “取消注册”。接下来,使用新的身份验证凭据注册您的远程代理,并与您的代理空间重新创建所有必要的关联。