View a markdown version of this page

创建和管理注册表 - Amazon Bedrock AgentCore
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

创建和管理注册表

迁移现已开放

Amazon 代理注册表已在新agent-registry命名空间下启动。2026 年 10 月 30 日将停止对公共预览版bedrock-agentcore命名空间的支持。有关迁移说明,请参阅注册表迁移综合指南。

创建注册表

控制台

例
Amazon Agent Registry namespace
  1. 打开Amazon 代理注册表控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 在 “注册表” 部分,选择 “创建注册表”。

  4. 在名称中,输入注册表的名称。名称必须以字母或数字开头。有效字符为 a-z、 A-Z、0-9、_(下划线)、-(连字符)、。 (点)和/(正斜杠)。该名称最多可包含 64 个字符。

  5. (可选)展开其他详细信息并输入描述(1—4,096 个字符)。

  6. (可选)展开 D iscovery Authorization 以配置用户在注册表中发现记录时的授权方式,包括搜索、浏览已批准的记录目录、批量获取已批准的记录以及调用注册表的 MCP 端点(入站授权)。选择 Amazon IAM 使用标准 Amazon 证书,或选择 JSON Web 令牌 (JWT) 使用您的企业身份提供商证书。如果您选择 JWT,则可以使用 Cognito 快速创建,也可以通过提供发现网址、受众、范围、自定义声明和客户来创建自己的 IdP。

  7. 在记录批准下,选择是否启用Auto-approval。禁用自动审批后,策展人必须先审查和审批每条记录,之后记录才会变得可供搜索。

  8. (可选)展开标签以向注册表添加标签。标签是键值对,可帮助您分类、搜索和管理注册表。每个标签都包含一个必填键和一个可选值。

  9. (可选)扩展 KMS 密钥以使用客户托管密钥配置静态加密。默认情况下,您的注册表使用 Amazon 自有密钥进行加密。要使用自己的密钥,请选择自定义加密设置(高级)并输入您的 KMS 密钥的 ARN,或者选择创建 Amazon KMS 密钥来创建新密钥。注册表创建后,无法更改 KMS 密钥。有关更多信息,请参阅Amazon 代理注册表中的数据保护。

  10. 选择 “创建注册表”。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. 打开 Amazon Bedrock AgentCore 控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 在 “注册表” 部分,选择 “创建注册表”。

  4. 在名称中,输入注册表的名称。名称必须以字母或数字开头。有效字符为 a-z、 A-Z、0-9、_(下划线)、-(连字符)、。 (点)和/(正斜杠)。该名称最多可包含 64 个字符。

  5. (可选)展开其他详细信息并输入描述(1—4,096 个字符)。

  6. (可选)展开 Search API 授权以配置消费者在搜索注册表时如何授权(入站授权)。选择 Amazon IAM 使用标准 Amazon 证书,或选择 JSON Web 令牌 (JWT) 使用您的企业身份提供商证书。如果您选择 JWT,则可以使用 Cognito 快速创建,也可以通过提供发现网址、受众、范围、自定义声明和客户来创建自己的 IdP。

  7. 在记录批准下,选择是否启用Auto-approval。禁用自动审批后,策展人必须先审查和审批每条记录,之后记录才会变得可供搜索。

  8. (可选)扩展 KMS 密钥以使用客户托管密钥配置静态加密。默认情况下,您的注册表使用 Amazon 自有密钥进行加密。要使用自己的密钥,请选择自定义加密设置(高级)并输入您的 KMS 密钥的 ARN,或者选择创建 Amazon KMS 密钥来创建新密钥。注册表创建后,无法更改 KMS 密钥。有关更多信息,请参阅Amazon 代理注册表中的数据保护。

  9. 选择 “创建注册表”。

注册表状态开始为 “正在创建”,置备完成后会转换为 “就绪”。

重要

Auto-approved 记录会跳过人工审核,并在提交后立即被发现。如果您启用自动批准,请使用补偿性控件,例如:

注意

对于启用 JWT 的注册机构,至少需要一个 JWT 授权配置字段:允许的受众、允许的客户端、允许的范围或自定义声明。如果您配置了多个配置,则 Amazon 代理注册表会对所有配置进行验证。

Amazon CLI

IAM-based 注册表:

例
Amazon Agent Registry namespace
aws agent-registry-control create-registry \ --name "MyRegistry" \ --description "Production registry" \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry \ --name "MyRegistry" \ --description "Production registry" \ --region us-east-1

JWT-based 注册表:

例
Amazon Agent Registry namespace
aws agent-registry-control create-registry \ --name "MyOAuthRegistry" \ --discovery-configuration '{"authorizerType": "CUSTOM_JWT", "authorizerConfiguration": {"customJWTAuthorizer": {"discoveryUrl": "https://cognito-idp.us-east-1.amazonaws.com/<poolId>/.well-known/openid-configuration", "allowedClients": ["<appClientId>"]}}}' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry \ --name "MyOAuthRegistry" \ --authorizer-type CUSTOM_JWT \ --authorizer-configuration '{"customJWTAuthorizer": {"discoveryUrl": "https://cognito-idp.us-east-1.amazonaws.com/<poolId>/.well-known/openid-configuration", "allowedClients": ["<appClientId>"]}}' \ --region us-east-1

使用客户托管密钥的注册表

例
Amazon Agent Registry namespace
aws agent-registry-control create-registry \ --name "MyEncryptedRegistry" \ --description "Registry with customer managed encryption" \ --encryption-configuration '{"kmsKeyArn":"arn:aws:kms:us-east-1:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222"}' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry \ --name "MyEncryptedRegistry" \ --description "Registry with customer managed encryption" \ --encryption-configuration '{"kmsKeyArn":"arn:aws:kms:us-east-1:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222"}' \ --region us-east-1
注意

您只能在注册表创建期间设置该--encryption-configuration参数。注册表创建后,您无法更改 KMS 密钥。如果省略此参数,则默认情况下,注册表将使用 Amazon 自有的密钥。

Amazon SDK

IAM-based 注册表:

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.create_registry( name='MyRegistry', description='Production registry' ) print(response['registryArn'])
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.create_registry( name='MyRegistry', description='Production registry' ) print(response['registryArn'])

JWT-based 注册表:

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.create_registry( name='MyOAuthRegistry', discoveryConfiguration={ 'authorizerType': 'CUSTOM_JWT', 'authorizerConfiguration': { 'customJWTAuthorizer': { 'discoveryUrl': 'https://cognito-idp.us-east-1.amazonaws.com/<poolId>/.well-known/openid-configuration', 'allowedClients': ['<appClientId>'] } } } ) print(response['registryArn'])
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.create_registry( name='MyOAuthRegistry', authorizerType='CUSTOM_JWT', authorizerConfiguration={ 'customJWTAuthorizer': { 'discoveryUrl': 'https://cognito-idp.us-east-1.amazonaws.com/<poolId>/.well-known/openid-configuration', 'allowedClients': ['<appClientId>'] } } ) print(response['registryArn'])

使用客户托管密钥的注册表

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.create_registry( name='MyEncryptedRegistry', description='Registry with customer managed encryption', encryptionConfiguration={ 'kmsKeyArn': 'arn:aws:kms:us-east-1:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222' } ) print(response['registryArn'])
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.create_registry( name='MyEncryptedRegistry', description='Registry with customer managed encryption', encryptionConfiguration={ 'kmsKeyArn': 'arn:aws:kms:us-east-1:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222' } ) print(response['registryArn'])

列出注册表

控制台

例
Amazon Agent Registry namespace
  1. 打开Amazon 代理注册表控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 注册表显示您账户中的所有注册机构,其中包含以下几列:

    1. 名称-注册表名称(链接到详情页面)。

    2. 描述-注册表描述(如果提供)。

    3. 身份验证类型 — 入站授权方法(AWS_IAM 或 CUSTOM_JWT)。

    4. 状态-当前状态(“创建”、“就绪”、“更新”、“删除” 或 “失败” 状态)。

    5. ARN — 注册表 Amazon 资源名称。

    6. 已创建-创建时间戳。

    7. 上次更新时间-上次修改时间戳。

  4. 使用查找注册表搜索栏按名称进行筛选。

  5. 使用分页控件浏览结果。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. 打开 Amazon Bedrock AgentCore 控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 注册表显示您账户中的所有注册机构,其中包含以下几列:

    1. 名称-注册表名称(链接到详情页面)。

    2. 描述-注册表描述(如果提供)。

    3. 授权类型-入站授权方法(AWS_IAM 或 CUSTOM_JWT)。

    4. 状态-当前状态(“创建”、“就绪”、“更新”、“删除” 或 “失败” 状态)。

    5. ARN — 注册表 Amazon 资源名称。

    6. 已创建-创建时间戳。

    7. 上次更新时间-上次修改时间戳。

  4. 使用查找注册表搜索栏按名称进行筛选。

  5. 使用分页控件浏览结果。

Amazon CLI

例
Amazon Agent Registry namespace
aws agent-registry-control list-registries \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control list-registries \ --region us-east-1

Amazon SDK

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.list_registries() for registry in response['registries']: print(f"{registry['name']} - {registry['status']} - {registry['registryArn']}")
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.list_registries() for registry in response['registries']: print(f"{registry['name']} - {registry['status']} - {registry['registryArn']}")

查看注册表详情

控制台

例
Amazon Agent Registry namespace
  1. 打开Amazon 代理注册表控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 从 “注册表” 表中选择注册表名称。

  4. 注册表详情页面显示以下可折叠部分:

    1. 注册表详情-显示名称、状态、描述、 Auto-approval (启用或禁用)、注册表 ARN、上次更新日期和创建日期。

    2. 注册表记录-显示状态摘要计数器(已提交总数、待批准、已批准、已弃用、已拒绝)和提交到该注册表的记录的记录表。在这里,您可以创建、查看或管理记录。

    3. 发现授权(入站授权)-显示当前的授权类型(AWS_IAM 或 CUSTOM_JWT),以及 JWT-authorized 注册管理机构的 JWT 授权方配置。

    4. 示例代码-提供常见操作(创建、批准、列出和发现记录)的示例代码,您可以复制和改编这些代码。

    5. 标签-以键值表的形式显示与注册表关联的标签。要添加、移除或修改标签,请在此部分中选择 “编辑” 以打开 “编辑标签” 页面。

  5. 要修改注册表,请选择编辑。要删除注册表,请选择删除。

  6. 要搜索或浏览此注册表中已批准的记录,请选择页面右上角的 “记录目录”(或在导航窗格中)。有关发现演练,请参阅代理注册表入门。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. 打开 Amazon Bedrock AgentCore 控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 从 “注册表” 表中选择注册表名称。

  4. 注册表详情页面有两个选项卡:

    1. 管理记录-查看和管理注册表记录。

    2. 搜索记录-在注册表中搜索已批准的记录。

  5. 注册表详情部分显示:名称、状态、描述、 Auto-approval (启用或禁用)、注册表 ARN、上次更新日期、创建日期。

  6. 注册表记录部分显示状态摘要计数器(已提交总数、待批准、已批准、已弃用、已拒绝)和记录表。

  7. 搜索 API 授权(入站授权)部分显示了当前的授权类型。

Amazon CLI

例
Amazon Agent Registry namespace
aws agent-registry-control get-registry \ --registry-id "<registryId>" \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control get-registry \ --registry-id "<registryId>" \ --region us-east-1

Amazon SDK

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.get_registry( registryId='<registryId>' ) print(f"Name: {response['name']}") print(f"Status: {response['status']}") print(f"ARN: {response['registryArn']}")
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.get_registry( registryId='<registryId>' ) print(f"Name: {response['name']}") print(f"Status: {response['status']}") print(f"ARN: {response['registryArn']}")

更新注册表

控制台

例
Amazon Agent Registry namespace
  1. 打开Amazon 代理注册表控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 选择要编辑的注册表旁边的单选按钮,然后选择编辑。或者,选择注册表名称,然后选择编辑。

  4. 在编辑注册表页面上,更新以下任意内容:

    1. 名称-更改注册表名称(与创建注册表的命名规则相同)。

    2. 描述-在 “其他详细信息” 下,更新或添加描述。

    3. 记录批准-开Auto-approval启或关闭。更改仅影响更新后提交的记录。

    4. 发现授权-对于 JWT-authorized 注册管理机构,更新 JWT 授权方配置(允许的客户端、受众、范围或自定义声明)。注册表创建后,无法更改入站授权类型本身(IAM 或 JWT)。

  5. 选择保存更改。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. 打开 Amazon Bedrock AgentCore 控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 选择要编辑的注册表旁边的单选按钮,然后选择编辑。或者,选择注册表名称,然后选择编辑。

  4. 在编辑注册表页面上,更新以下任意内容:

    1. 名称-更改注册表名称(与创建注册表的命名规则相同)。

    2. 描述-在 “其他详细信息” 下,更新或添加描述。

    3. 记录批准-开Auto-approval启或关闭。更改仅影响更新后提交的记录。

  5. 选择保存更改。

注意

无法从 “编辑注册表” 页面编辑标签。要修改标签,请转到注册表详细信息页面,在 “标签” 部分选择 “编辑”,在 “编辑标签” 页面上添加或删除标签,然后选择 “保存更改”。(只有 Amazon 代理注册表控制台支持标记。)

注意

将自动批准配置从 OFF 更新为 ON 仅影响更改后提交的记录。已经 “待批准” 的现有记录不受影响,仍必须通过调用 API 进行批准或拒绝。 UpdateRegistryRecordStatus 将配置从 ON 更改为 OFF 仅影响更改后发布到 “待批准” 的记录。

重要

开启自动批准功能会移除对新记录的人工审查,因此在开启自动批准之前,请先设置补偿控制措施。有关补偿控件的更多信息,请参阅创建注册表。

注意

注册表创建后,无法更改入站授权类型(IAM 或 JWT)和 JWT 发现 URL。对于 JWT-authorized 注册机构,您只能更新授权方配置(允许的客户端、受众、范围、自定义声明)。

Amazon CLI

例
Amazon Agent Registry namespace
aws agent-registry-control update-registry \ --registry-id "<registryId>" \ --description '{"optionalValue": "Updated description"}' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control update-registry \ --registry-id "<registryId>" \ --description '{"optionalValue": "Updated description"}' \ --region us-east-1

Amazon SDK

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.update_registry( registryId='<registryId>', description={'optionalValue': 'Updated description'} ) print(f"Updated: {response['name']} - Status: {response['status']}")
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.update_registry( registryId='<registryId>', description={'optionalValue': 'Updated description'} ) print(f"Updated: {response['name']} - Status: {response['status']}")

删除注册表

控制台

例
Amazon Agent Registry namespace
  1. 打开Amazon 代理注册表控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 选择要删除的注册表旁边的单选按钮,然后选择删除。

  4. 在确认对话框中,查看警告:在删除注册表之前,必须先删除所有注册表记录。

  5. 在确认字段中键入 delete。

  6. 选择删除。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. 打开 Amazon Bedrock AgentCore 控制台。

  2. 在导航窗格的 “发现” 下,选择 “注册表”。

  3. 选择要删除的注册表旁边的单选按钮,然后选择删除。

  4. 在确认对话框中,查看警告:在删除注册表之前,必须先删除所有注册表记录。

  5. 在确认字段中键入 delete。

  6. 选择删除。

注册表状态更改为 “正在删除”。成功横幅确认删除何时完成。

Amazon CLI

例
Amazon Agent Registry namespace
aws agent-registry-control delete-registry \ --registry-id "<registryId>" \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control delete-registry \ --registry-id "<registryId>" \ --region us-east-1

Amazon SDK

例
Amazon Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.delete_registry( registryId='<registryId>' ) print(f"Status: {response['status']}") # DELETING
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.delete_registry( registryId='<registryId>' ) print(f"Status: {response['status']}") # DELETING