【问题标题】:How to delete aws iot things and policies?如何删除 aws iot 事物和策略?
【发布时间】:2016-06-30 10:23:32
【问题描述】:

您好,我想删除在 AWS IoT 中创建的内容和策略。

删除内容时出现此错误 =>

操作失败,因为输入无效。无法删除。 Thing Arduino 仍然依附于一个或多个主体

删除证书时出现此错误 => 操作失败,因为资源与操作的先决条件冲突。删除前必须分离证书策略

删除策略时出现此错误 => 无法删除策略。无法删除该策略,因为该策略已附加到一个或多个主体 (name=policyyun)

谁能帮忙?谢谢。

【问题讨论】:

  • 如果您想删除策略,您应该先将策略版本更改为默认版本(版本1),然后您可以将其删除。如果您想删除事物或证书,您现在可以轻松删除它而无需分离事物。实际上,随着新控制台的分离,事情会在后台发生。您可以找到更多信息here。欢呼凯文

标签: amazon-web-services aws-cli aws-iot


【解决方案1】:

我假设事物已创建,并且与策略一起附加到证书。 以下是清理事物时要遵循的顺序。这将防止由于关联导致的 DeleteConflictException。

  1. DetachPolicy - 将策略与证书分离
  2. DetachThingPrincipal - 从事物中分离证书
  3. UpdateCertificate 设置为 INACTIVE(或在 #4 中设置 ForceDelete=true
  4. 删除证书
  5. 删除策略
  6. 删除事物

注意:您可以使用 ListThingPrincipals

获取与事物关联的主体(证书 ARN)数组

附言粗体文本是大多数 AWS IOT SDK 包中的 API

【讨论】:

  • ForceDelete=true 有效吗?就我而言(boto3),我需要执行所有步骤才能删除证书。 1. 分离策略。 2. 分离事物主体。 3. UpdateCertificate(设置为 INACTIVE)
【解决方案2】:

您必须先分离事物、证书和策略,然后才能删除它们。

在 AWS 控制台中,选择证书。然后,在左侧面板的“详细信息”选项卡中,选中您要删除的内容并使用红色按钮“分离”它。

然后你就可以删除这个东西了。您必须对策略执行相同的操作。

【讨论】:

  • 我正在尝试以编程方式执行此操作。是否可以从 Thing 获取证书 ARN,以便我可以使用 DetachPrincipalPolicyDetachThingPrincipal
猜你喜欢
  • 2018-04-22
  • 1970-01-01
  • 2021-12-25
  • 2020-06-30
  • 2018-02-27
  • 1970-01-01
  • 2018-01-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多