Amazon web services 了解IAM角色

Amazon web services 了解IAM角色,amazon-web-services,amazon-iam,Amazon Web Services,Amazon Iam,假设用户“ABC”附加了“EC2完全访问”策略。 角色也可用于“S3完全访问”,EC2可以承担此角色。这是否意味着ABC可以间接访问S3? 我在这里有点困惑。此外,任何可以登录到EC2机器的用户都可以担任此角色,并可以访问S3。我如何控制这一点,以便由用户“ABC”部署的应用程序可以承担此角色,而不是由其他用户应用程序承担此角色?我将尝试从您的问题中进行细分 首先,你有一个角色可以拥有“S3完全访问权”。如果要将其附加到服务,则需要创建一个表示可以使用该服务的信任策略 角色与服务的工作方式在服务

假设用户“ABC”附加了“EC2完全访问”策略。 角色也可用于“S3完全访问”,EC2可以承担此角色。这是否意味着ABC可以间接访问S3?
我在这里有点困惑。此外,任何可以登录到EC2机器的用户都可以担任此角色,并可以访问S3。我如何控制这一点,以便由用户“ABC”部署的应用程序可以承担此角色,而不是由其他用户应用程序承担此角色?

我将尝试从您的问题中进行细分

首先,你有一个角色可以拥有“S3完全访问权”。如果要将其附加到服务,则需要创建一个表示可以使用该服务的信任策略

角色与服务的工作方式在服务上有所不同,例如,默认情况下,EC2主机将使用来自IAM角色的临时凭据,这些凭据假定没有任何用户输入。然而,当您希望服务承担角色(例如从S3复制对象)时,红移要求您显式指定角色Arn

这意味着,如果任何人都可以访问EC2实例,如果他们通过SDK或CLI调用AWS API,他们将拥有与EC2主机相同的权限(从角色获取)


如果IAM用户希望访问该角色,但没有访问EC2主机的权限,则需要执行才能访问正在使用的EC2主机。此外,该角色的负责人还需要将帐户或要承担的特定用户列入白名单。

没问题@PratikGarg,如果您需要更多信息,请告诉我:)我的理解是,如果我们在Ec2上部署了10个应用程序,所有应用程序都可以承担此角色并可以访问S3。我们不能限制它?如果所有应用程序都在EC2上,就不能限制它,在这里,人们会将每个应用程序作为Docker映像托管,并与ECS结合。如果执行此操作,则每个ECS任务都将获得自己的角色,即使它位于同一个EC2:)