

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

# 连接远程 A2A 代理
<a name="configuring-integrations-and-knowledge-connecting-remote-a2a-agents"></a>

远程代理通过将任务委托给实现 Agent-to-Agent (A2A) 协议的外部代理来扩展 AWS DevOps 代理的调查能力。当您连接远程代理时， AWS DevOps 代理可以为其分配调查子任务，并将其结果纳入整个调查中。本指南介绍如何将远程 AWS DevOps 代理连接到代理。

**注意：**目前仅支持远程 A2A 代理进行事件调查。

## 要求
<a name="requirements"></a>

在连接远程代理之前，请确保您的代理满足以下要求：
+ **A2A 协议支持** — 您的代理必须实现 [Agent-to-Agent (A2A) 协议（JSONRPC 或 HTTP\+JSON 绑定）](https://a2a-protocol.org/latest/specification/)，并在可访问的 URL 上提供有效的代理卡。代理卡告诉 AWS DevOps 代理如何与您的代理沟通。用于调用代理的身份验证凭证用于获取代理卡。以下代理卡字段为必填字段：
  + **姓名**-用于标识您的代理的唯一名称
  + **描述**-对您的代理能力的描述。 AWS DevOps 代理使用它来确定哪个远程代理最适合给定的子任务
  + s@@ **upportedInter** faces — 声明调用端点 URL、协议绑定（`JSONRPC`或`HTTP+JSON`）和协议版本
  + **功能** — 表示您的代理是否支持流式传输响应的对象
  + **技能**-描述代理特定能力的数组。 AWS DevOps 代理使用技能将任务路由到最合适的远程代理
+ **身份验证支持**-您的远程代理必须支持以下身份验证方法之一：持有者令牌、OAuth 客户端凭证、API 密钥或 AWS 签名版本 4 (Sigv4)。

## 安全注意事项
<a name="security-considerations"></a>

将远程代理连接到 AWS DevOps 代理时，请考虑以下安全方面：
+ **Read-only 代理** — 远程代理的设计应仅用于调查和数据收集。确保远程代理不对生产系统执行写入操作或修改。
+ **即时注入风险** — 远程代理可能会带来额外的即时注入攻击风险。有关更多信息，请参见[提示注入保护： AWS DevOps 客户端安全](aws-devops-agent-security.md)。

有关即时注入和责任共担模型的更多信息，请参阅[AWS DevOps 代理安全](aws-devops-agent-security.md)。

## 注册远程代理（账户级别）
<a name="registering-a-remote-agent-account-level"></a>

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

### 步骤 1：配置远程代理
<a name="step-1-configure-remote-agent"></a>

1. 登录 AWS 管理控制台

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

1. 转到**能力提供者**页面（可从侧面导航栏访问）

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

1. 在**配置远程代理**页面上，输入代理详细信息和身份验证配置：

**代理详情：**
+ **名称**-此远程代理的唯一名称
+ **代理卡端点**-远程代理的代理卡的 HTTPS URL。 AWS DevOps 代理获取此 URL 以发现代理的功能并调用端点。
+ **描述**（可选）-添加描述以帮助确定代理的用途

**身份验证方法：**

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

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

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

1. **API 密钥标**头-服务期望的标头名称（例如，`x-api-key`）

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

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

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

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

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

1. **客户端密钥**-输入 OAuth 客户端的客户端密钥

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

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

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

1. **配置 IAM 角色**-选择以下选项之一：
   + **使用现有角色**-从下拉列表中选择现有 IAM 角色。该角色必须具有允许 AWS DevOps 代理服务委托人代入该角色的信任策略（请参阅[为 Sigv4 身份验证创建 IAM 角色](configuring-integrations-and-knowledge-connecting-mcp-servers.html#creating-an-iam-role-for-sigv4-authentication)）。
   + **手动创建新角色**-按照控制台中显示的分步说明创建具有正确信任策略的新 IAM 角色。

1. **AWS 区域**-输入 Sigv4 签名的 AWS 区域（例如，）`us-east-1`

1. **服务名称**-输入 Sigv4 签名的 AWS 服务名称（例如，对于 API Gateway，对于 Amazon Bedrock，`execute-api`对于 `bedrock-agentcore` Amazon Bedrock） AgentCore

1. 单击**下一步**

### 第 2 步：查看并注册
<a name="step-2-review-and-register"></a>

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

1. 单击 “**注册**” 完成注册

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

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

## 将远程代理与代理空间关联
<a name="associating-remote-agents-with-an-agent-space"></a>

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

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

1. 前往 “**功能**” 选项卡

1. 在 “**远程代理**” 部分，单击 “**添加**”

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

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

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

## 管理远程代理连接
<a name="managing-remote-agent-connections"></a>

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

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

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

## 相关主题
<a name="related-topics"></a>
+ [连接 MCP 服务器](configuring-integrations-and-knowledge-connecting-mcp-servers.md)
+ [AWS DevOps 代理安全](aws-devops-agent-security.md)
+ [创建代理空间](getting-started-with-aws-devops-agent-creating-an-agent-space.md)