View a markdown version of this page

删除代理空间 - AWS DevOps 代理人

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

删除代理空间

本页介绍如何删除 AWS DevOps 代理空间和移除启用 AWS DevOps 代理时在您的 AWS 账户中创建的 IAM 资源。 AWS DevOps 代理不提供自动禁用或卸载操作。您可以按照本页上的步骤删除资源。

重要

删除座席空间会永久删除所有调查数据、聊天记录、座席日志、推荐和应用程序拓扑图。删除 IAM 角色会移除代理对您的 AWS 账户的访问权限以及用户对操作员 Web 应用程序的访问权限。这些操作无法撤消。

先决条件

开始之前,请确保您拥有:

  • Sign-in 作为 IAM 用户或 IAM 身份中心的用户访问 AWS 管理控制台。

  • 删除代理服务中代理空间的 AWS DevOps 权限(aidevops:ListAgentSpacesaidevops:DeleteAgentSpace)。

  • 在您的 AWS 账户中管理 IAM 角色和策略的权限(iam:ListRolesiam:ListPoliciesiam:ListAttachedRolePolicies、、iam:DetachRolePolicyiam:DeleteRole、和iam:DeletePolicy)。

AWS DevOps 代理是一项区域服务。代理空间及其生成的数据存储在您启用代理的 AWS 区域中。您必须在您的账户拥有代理空间的每个地区执行代理空间删除程序。IAM 资源是全球性的,因此您只需将其删除一次。有关提供 AWS DevOps 代理服务的区域列表,请参阅支持的区域:

重要

必须按以下顺序删除资源。当代理空间仍引用 IAM 角色时,无法安全地将其删除。

下表列出了启用 AWS DevOps 代理时创建的资源。在完成程序时,请将其用作清单。

AWS 服务 资源类型 资源名称
AWS DevOps 代理人 代理空间 你给代理空间起的名字(默认:DevOpsAgentSpace
AWS 身份和访问管理 (IAM) Access Management 角色 AgentSpace 角色(通常命名DevOpsAgentRole-AgentSpace-*
AWS 身份和访问管理 (IAM) Access Management 角色 WebappAdmin 角色(通常命名DevOpsAgentRole-WebappAdmin-*
AWS 身份和访问管理 (IAM) Access Management Customer-managed 政策 与该 AgentSpace 角色关联的任何客户管理策略

确切的角色和策略名称取决于您的入职路径。使用以下 AWS CLI 程序或在 IAM 控制台中按DevOpsAgentRole-前缀进行搜索以查找您账户中的实际名称。

注意

附加到 IAM 角色(AIDevOpsAgentAccessPolicyAIDevOpsOperatorAppAccessPolicy)的两个 AWS 托管策略归属 AWS 且未被删除。您只能在删除角色时将其分离。

删除代理空间

删除代理空间会删除其服务关联、操作员应用程序配置以及所有调查数据、聊天记录、代理日志、推荐和应用程序拓扑图。

使用 AWS DevOps 代理控制台

  1. 打开 AWS DevOps 代理控制台,网址为https://console.aws.amazon.com/aidevops/

  2. 将您的 AWS 区域更改为代理空间所在的区域。

  3. 在导航窗格中,选择代理空间

  4. 从表格中选择要移除的代理空间。代理空间详细信息页面打开。

  5. 操作中,选择删除代理空间

  6. 在打开的对话框中,查看信息以确保其准确性,输入要确认的座席空间名称,然后选择删除

使用 AWS CLI

步骤 1:列出您所在地区的代理空间以找到您的agentSpaceId. 保存响应中的值。例如,REGION替换为代理空间所在的区域us-east-1

aws devops-agent list-agent-spaces --region REGION

步骤 2:删除代理空间。AGENT_SPACE_ID替换为步骤 1 中的值。

aws devops-agent delete-agent-space --agent-space-id AGENT_SPACE_ID --region REGION

验证代理空间是否已删除

运行以下命令并确认响应中包含一个空列表。

aws devops-agent list-agent-spaces --region REGION

删除 IAM 资源

这些过程将引导您完成如何移除启用 A AWS DevOps gent 时在您的 AWS 账户中创建的 IAM 角色和任何客户托管的 IAM 策略。由于角色和策略名称取决于您的入职路径,因此以下过程要么在 IAM 控制台中按前缀搜索它们,要么通过 AWS CLI 查找其全名。

重要

下次您通过相同的入职路径重新启用 AWS DevOps 代理时,将客户管理的政策留在您的账户中是最常见的失败原因。完成本节中的所有步骤,以免在稍后重新启用时出现问题。

正在删除 AWS DevOps 代理 IAM 角色(控制台)

  1. 使用 https://console.aws.amazon.com/iam/ 打开 IAM 控制台。

  2. 在导航窗格中,选择角色

  3. 在表格中,搜索名称为的角色DevOpsAgentRole。返回两个角色,其名称为DevOpsAgentRole-AgentSpace-<suffix>DevOpsAgentRole-WebappAdmin-<suffix>

  4. 对于表中的每个角色,选中该角色的复选框,选择删除,然后在确认对话框中输入要确认的角色名称并选择删除

删除所有客户托管的 IAM 策略(控制台)

如果您的入职路径将客户管理的策略附加到该 AgentSpace 角色,请在删除该角色后删除该策略。

  1. 使用 https://console.aws.amazon.com/iam/ 打开 IAM 控制台。

  2. 在导航窗格中,选择策略

  3. 类型筛选:客户管理,然后查找名称以开头的所有保单AIDevOps或您在入职期间使用的任何其他标识符。

  4. 对于要删除的每个策略,请选中策略的复选框,选择 “操作”,然后从下拉菜单中选择 “删除”。在打开的对话框中,查看信息,输入要确认的策略名称,然后选择删除

使用 AWS CLI

步骤 1:发现通过激活创建的角色名称。保存响应中的角色名称,以便在以下步骤中使用。

aws iam list-roles --query "Roles[?starts_with(RoleName, 'DevOpsAgentRole-AgentSpace')].RoleName" --output text aws iam list-roles --query "Roles[?starts_with(RoleName, 'DevOpsAgentRole-WebappAdmin')].RoleName" --output text

步骤 2:列出附加到每个角色的策略。ROLE_NAME替换为步骤 1 中的每个角色名称。

aws iam list-attached-role-policies --role-name ROLE_NAME

在响应中,客户管理的政策 ARN 包含您的 12 位数 AWS 账户 ID(例如)。arn:aws:iam::123456789012:policy/... AWS 托管策略 ARN 包含文字aws(例如)。arn:aws:iam::aws:policy/AIDevOpsAgentAccessPolicy保存第 4 步的客户管理的策略 ARN。

第 3 步:从每个角色中分离所有策略,然后删除该角色。对上一步返回的每个策略 ARN 运行一次该detach-role-policy命令。ROLE_NAME替换为角色名称和每POLICY_ARN个 ARN。

aws iam detach-role-policy --role-name ROLE_NAME --policy-arn POLICY_ARN aws iam delete-role --role-name ROLE_NAME

步骤 4:删除您在步骤 2 中保存的所有客户管理策略。替换CUSTOMER_POLICY_ARN为每个 ARN。

aws iam delete-policy --policy-arn CUSTOMER_POLICY_ARN

验证 IAM 资源是否已删除

运行以下命令。第一次调用应返回空结果。第二次调用不应返回您拥有并已删除的任何政策。

aws iam list-roles --query "Roles[?starts_with(RoleName, 'DevOpsAgentRole-')].RoleName" --output text aws iam list-policies --scope Local --query "Policies[?starts_with(PolicyName, 'AIDevOps')].PolicyName" --output text

Re-enabling AWS DevOps 清理后的代理

如果您按照上述步骤删除了 AWS DevOps 代理资源,之后又想再次启用 AWS DevOps 代理,请参阅开始使用 AWS DevOps 代理。记住以下内容:

  • 如果您没有删除客户管理的 IAM 策略,则通过相同的入职路径进行的下一次启用尝试可能会失败,并显示角色已存在的错误。请先删除剩余的策略。

  • 删除代理空间后,该名称将保留一小段时间。如果您立即重新启用并使用相同的名称,则创建可能会延迟。