2015-06-22 51 views
0

我正在设置EC2实例和Amazon RDS数据库来托管.NET网站。我希望我的第三方网站管理员处理其设置,但是一旦他完成设置并且网站正在运行,我想完全删除他对EC2和RDS的访问权限。控制第三方的EC2和RDS访问

我想让他访问的是EC2中的RDP,具有root权限,以防他需要安装额外的软件以及能够在RDS中的SQL数据库中创建和编辑表。他在管理和修改EC2/RDS实例方面没有任何作用。

我试过用组和所有分配IAM访问,但我无法弄清楚如何让自己保留超级用户访问权限,而当他完成设置Web服务器和SQL数据库时删除他。我如何给他临时可更新的访问权限,同时保持超级用户访问权限,即使我将他从IAM中移除,访问权限也不会受到影响?

回答

3

亚马逊IAM不会帮助你做你想做的事情。

当您想通过AWS管理控制台和/或AWS API限制和/或允许访问资源的上层管理时,使用IAM。

但是,您要做的是控制对资源内部(EC2实例和RDS实例)的访问。对于这些,你需要用自己的内部安全控制,以做他们:

  1. 为了您的RDS实例,创建具有刚好够权限的非管理员用户为他们完成他们想做的事情。例如,如果你的RDS实例是MySQL,那么给它们INSERT,SELECT,UPDATE,DELETE,CREATE TABLE等权限。不要赋予他们创建/修改用户或任何类似管理的能力。最佳做法是尽可能少地给予他们权限,并在他们要求他们时添加权限(如果您认为确定)。

  2. 对于您的EC2实例,请不要授予他们根访问权限。专门为您的网站管理员创建非root用户。给该用户“足够”的权限来安装网站。不要让他们使用yumapt。相反,如果他们需要它,他们应该告诉你,你可以作为根。

在这两种情况下,一旦您的网站管理员完成,请删除他们的用户并关闭他们的安全组。

切勿对第三方提供root/admin访问权限。原因是多方面的,但主要的有这些:

  1. 凭借超级用户权限,您的网站管理员可以创建其他用户和/或后门,允许他们访问您吊销其访问后也。不要给他们这样做的机会。
  2. 既然你是负责这些资源,你应该知道,是为了他们的一切:即得到创建的所有用户,已安装的所有软件等
+0

我用你的技巧破解它。 Windows Server似乎拥有一个无法删除的超级超级用户,因此我为网站管理员创建了一个可撤销的管理员帐户,我可以使用EC2制作的管理员帐户控制该帐户。 RDS上的管理员帐户不允许用户创建(至少在我的情况下),因此一切都是安全的。谢谢! :) –