如何通过ARN删除AWS资源?

4
我在AWS中有一个服务关联角色需要删除。当我尝试在IAM中删除时,它失败并弹出一个带有使用此角色的两个资源ARN的弹窗。这篇愚蠢的博客文章向我展示了重现我正在遇到的问题的步骤,并告诉我需要删除使用我正在尝试删除的角色的资源。显然。
我已经尝试在IAM搜索窗口中搜索给定的ARN,但没有找到它们。
既然我有了ARN,那么我如何删除它们以便删除此角色?

根据我的回答 - 如果您提供那些ARN(您可以掩盖AWS帐户ID /区域/资源ID - 只有服务和资源类型/资源部分很重要 - https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-arns) - 我可以准备删除这些资源的命令或者给出如何从UI中删除它们的建议。 - Michał Z.
1个回答

3

目前没有任何API可以根据ARN删除任何资源。您需要使用特定的服务来删除资源。

如果您有ARNs-根据文档-它将是第三部分(由""字符):

arn:partition:SERVICE:region:account-id... // SERVICE where your resource is present

例如- 如果你有那个ARN:
arn:aws:ec2:us-east-1:1234567890:instance/i-12345678901234567

这表示它是EC2实例。您可以通过AWS控制台(UI)或例如使用 AWS CLI来删除它:
aws --region us-east-1 ec2 terminate-instances --instance-ids i-12345678901234567

编辑

根据您提供的链接 (脑死亡博客文章),Redshift群集有ARN,因此您可以尝试使用此命令通过AWS CLI删除它们:

aws --region <REGION> redshift delete-cluster --cluster-identifier <CLUSTER ID>

您可以从ARN中获取区域集群ID

如果您想从UI(AWS控制台)中删除它们,请不要忘记更改到适当的区域。


2
谢谢,这个方法可行。我正在删除一个RDS实例,所以命令是aws --region us-east-1 rds delete-db-instance --db-instance-identifier nd3io3zfxyzxyz --skip-final-snapshot - Dean Schulze

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接