我读到许多人因为Lambda与他们的DynamoDB而挣扎,因为他们生活在VPC中。但是我的问题是,为什么要使用VPC?
VPC旨在通过与外部世界(AKA互联网)直接连接来保护服务。例如RDS之类的事情,就是坐鸭子,等待任何知道URL的人查询,因此可能成为DDoS的受害者,或者是零日漏洞利用,可能绕过凭据。
但是,AWS Lambda和DynamoDB并非如此,它们没有与互联网的直接连接。他们的访问受到IAM凭据的保护,并且事实上对于此类DDoS / 0Day攻击是安全的。
因此产生一个问题,为什么不能从Lambda / DynamoDB中使用VPC,如果他们不能从中受益,反而会使配置变得更加复杂呢?
我看不到将VPC用于Lambda或DynamoDB的好处。
但是也许我的理解是错误的?
答案 0 :(得分:2)
如果您的Lambda函数仅需要连接到DynamoDB,则将Lambda函数放置在VPC中是错误的。
如果您的Lambda函数需要访问VPC内运行的EC2实例,RDS实例或某些其他服务,并且还需要连接到DynamoDB,则Lambda函数将必须在VPC中运行,并且您需要通过VPC端点或NAT网关提供对DynamoDB的访问。