为什么AWS IAM允许将用户限制为仅编程访问或仅限Web控制台访问?

时间:2018-03-05 07:17:13

标签: amazon-web-services amazon-iam

Amazon Web Service的IAM服务允许管理员创建具有不同权限,组等的用户帐户。

当管理员创建新用户时,他可以选择指定此用户是仅限于程序访问(即仅通过api调用访问AWS)还是Web控制台访问(即可以登录Web GUI)。

为什么AWS投入时间和金钱来做这件事?

为什么有人想要将用户限制为一个或另一个? Web控制台可以执行任何编程访问,反之亦然。仅允许一个或另一个似乎不提供任何安全优势。那么为什么要这么麻烦呢?

3 个答案:

答案 0 :(得分:5)

控制台凭据和IAM用户密钥是两组独立的凭证(对于相同的主体)。这并不是因为AWS解决了两个本质上连接的问题。

在大多数情况下,你的断言是正确的 - 有一些例外情况并非完全相关,但通常情况下,你可以通过编程方式完成的任何事情都可以在控制台中完成,反之亦然,所以它不能只是为了控制对底层资源的访问而限制用户的任何上诉的动机。

有些用户不需要以编程方式访问。这些用户可能是非技术(或非开发人员)用户,他们具有合法的业务目的,可以访问控制台,但不需要密钥。

有些用户不需要控制台帐户。这些用户很可能是需要API密钥的非人类用户,但其位置不足以使用IAM角色凭证。

不配置用户不需要的访问机制与最小权限原则完全一致。

答案 1 :(得分:0)

我有一次这个问题,当你继续与AWS合作时,你会更清楚。让我试着从我所知道或理解的东西来解释:

  

为什么有人想要将用户限制在一个或另一个?

对此的简短回答是隔离和更细粒度的控制,让我尝试通过场景来回答这个问题:

  • 您有一个帐户团队,其工作是支付账单,您将创建 一个具有控制台访问权限的IAM角色,以便他们可以支付账单, 它们可能不是IT专业人员的原因和原因 你会给Account团队带来什么样的复杂功能吗? 访问,有什么需要?

副Versa

  • 如果您将一个模块提供给离岸团队进行开发,那么您就拥有了 创建了具有适当IAM权限的RedShift群集,仅限您 希望他们知道什么是必要的,为什么要访问 控制台,以便他们可以看到帐户的内容?

我想说的是,每个人都有自己的优势,这取决于你在AWS工作时会遇到的情况。

答案 2 :(得分:-2)

我觉得你被误导了。您实际上可以创建一个IAM用户同时访问控制台和编程访问。在创建用户时,它在第一页上为访问类型提供了两个复选框:程序化访问 AWS管理控制台访问。您可以同时选择它们或任何一个。如果两者都有,它最终将为您提供以下内容:

  • 访问密钥ID和秘密访问密钥:用于编程访问
  • 密码:用于控制台访问(您也可以手动设置)