我正在使用Elastic Beanstalk以及用于自动创建一些环境资源(如SQS队列)的新功能。这非常方便,但是这有一个问题:如果我“终止”环境,所有相关资源也会被删除。
我发现这真的很危险,虽然我是唯一一个管理这个帐号的人,但我总是可以喝醉(哈哈),或者在CLI中键入错误的命令,当然,有人可能会窃取我的帐户。
可能我有点偏执,但到目前为止我已经找到了一些策略,我想知道哪一个最好:
1)为我自己创建一个具有只读访问权限的新IAM用户,并为主帐户(master)设置双因素身份验证,这样如果我需要创建资源,我绝对需要登录到master帐户具有更好的安全性。
2)防止从Beanstalk创建的主EC2实例终止。如果我这样做,我不能再错误地终止Beanstalk环境。我的问题是:弹性负载平衡器的一个优点是它可以关闭不健康的实例并启动新的实例。但是,如果将一个实例设置为“禁止终止”,会发生什么?负载均衡器可以绕过这个并仍然创建一个新实例吗?
3)两者兼而有之?
作为一项规则,关于此主题的最佳做法是什么?
感谢您的回答!
答案 0 :(得分:1)
不幸的是,SQS队列不支持终止保护。
在你的两个选项中,我肯定会选择1)因为2)不能完全保护EB群集不被删除。
<强>解释强>
1)我建议为每日任务设置一个单独的IAM用户,并使用双因素身份验证保护主帐户,并使用它来启动/关闭新的EB群集。
2)即使您使用终止保护保护主EC2实例,其他与EB环境相关的关键资源仍将被终止,例如负载均衡器,自动扩展组和SNS主题。
我认为最简单的解决方案仍然是遵循“目标两次,一次拍摄”的理念,尽管IAM帐户的策略不允许它终止实例,EB环境,删除EB应用程序等在临时精神错乱的时刻,这将是你对自己的肯定保护。
希望这有帮助!