如何允许ECS任务访问RDS

我有一个从Lambda函数执行的ECS任务。此任务将在运行MySQL的RDS实例上执行一些基本的SQL操作(例如,选择、插入、更新)。管理从ECS任务到RDS的访问的正确方式是什么?

我当前正在使用安全组规则连接到RDS,其中端口3306允许从特定IP地址(EC2实例所在的地址)进行连接。

我正在将此功能从EC2转移到ECS任务。我查看了IAM策略,但这些操作似乎管理AWS CLI RDS操作,可能不是这里的解决方案。谢谢!


解决方案

IAM角色和安全组是服务于不同目的的两个完全不同的事物。您必须打开安全组才能允许任何网络流量访问RDS服务器。您应该将入站安全组列入白名单,而不是将IP地址列入白名单。

例如RDS服务器在安全组1,ECS服务器在安全组2,您可以在安全组1的入站访问规则中输入安全组2的ID,这样就不必担心服务器更改IP地址。

相关文章