【发布时间】:2020-10-16 11:42:51
【问题描述】:
我正在使用 AWS 代码管道创建一个 CI/CD 管道来部署多个 lambda 函数。目前,我正在为 lambdas 函数手动上传 .zip 文件,其中包括一个 configuration.json 文件,该文件具有访问 RDS 数据库的凭据。
我已经创建了一个 SAM 模板来通过 codepipeline 部署 lambda 函数,但是,我无法想出一种解决方案来为 lambda 函数提供 RDS 数据库凭据,因为在代码存储库中提交 configuration.json 文件不是一个选项。
AWS 机密管理器对我来说不是一个选择,因为数百万的 API 调用会影响 lambda 函数,因此成本会非常高。
【问题讨论】:
-
带 KMS 的参数存储
-
Secrets Manager 比 Parameter Store 有一个额外的优势,那就是它提供了与 MySQL RDS 兼容的凭证轮换功能。
-
IAM 数据库认证?
-
1) 您不会为每个请求调用 Secrets Manager,仅在需要建立连接时调用它(如果您为每个请求建立新连接,您会很快找到你有更严重的问题)。
-
2) 1,000,000 次调用 Secrets Manager 的费用为 5 美元。如果这确实是一个财务问题,那么您可能会对 AWS 大发雷霆。
标签: mysql database amazon-web-services aws-lambda amazon-rds