本文介绍了确定特定AWS资源的创建者的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
为要标记的资源创建事件规则。例如,每当创建/an实例/卷/快照/AMI时,以下事件规则都会调用目标Lambda函数。
{
"detail-type": [
"AWS API Call via CloudTrail"
],
"detail": {
"eventSource": [
"ec2.amazonaws"
],
"eventName": [
"CreateVolume",
"RunInstances",
"CreateImage",
"CreateSnapshot"
]
}
}
目标Lambda函数解析事件数据。您需要提取所有资源ID和主体数据,并进行API调用来标记资源。下面的示例使用Boto3 EC2 API;resource_id、username和主体是从事件中提取的变量。
ec2.create_tags(Resources=resource_ids, Tags=[{'Key': 'Owner', 'Value': username}, {'Key': 'PrincipalId', 'Value': principal}])
我们在过去几年中使用了多项AWS服务。现在我们有很多AWS资源,这些资源都是由Tag创建的,但还没有创建。我们想用Tag创建的w来标记我们的资源(支持标记)上的每一个,指定创建它的用户的名称/电子邮件。可以通过任何API(Boto3)或控制台来实现吗?根据我的研究,这似乎是不可能的,但我想与社区确认是否有任何方法可以做到这一点。
推荐答案没有现成的解决方案,但您可以使用CloudWatch events和Lambda创建自定义解决方案。我去年仅针对EC2资源实施了类似的解决方案。
您还可以扩展此解决方案来标记其他资源。
更多推荐
确定特定AWS资源的创建者
发布评论