1

要将ec2实例连接到S3或RDS,我通常需要为ec2实例提供具有适当权限的角色,对不对?AWS安全组和IAM角色

如果我在一个SecurityGroup中有我的ec2实例并且在另一个安全组中有s3/RD3,是不是只给S3/RDS角色和ec2权限就足够了?

试图了解何时应使用角色与安全组来允许各种AWS资源相互通信。

回答

3
  • IAM角色用于限制AWS用户/帐户/角色访问AWS API。
  • 安全组用于限制网络访问VPC内存在的资源。

注EC2和RDS(和红移和Elasticache ......)怎么是存在于你的VPC服务器,并且通过使直接网络连接到这些服务器与这些资源进行交互。因此,您可以通过安全组保护网络的安全。

请注意,您对S3(或DynamoDB或SQS或SNS ...)资源所处的服务器没有可见性,这些资源不在VPC内部运行,您只能通过AWS与这些资源进行交互API。因此,您可以通过AWS Identity and Access Management(IAM)保护对AWS API的访问权限。

2

角色和安全组有两个不同的用途。

角色

角色用于授予权限,以EC2实例执行某些AWS API调用。

它不参与网络安全。

安全组

安全组就成为网络安全的一部分,他们不玩在EC2权限的部分访问API。当你需要给一个实例的权限来执行的API函数,诸如访问S3,或控制RDS实例(未查询数据)

Conslusion

使用EC2作用。

当您需要授予实例访问网络资源的权限时(例如在RDS实例中查询数据时)使用安全组。