从Bitbucket存储凭证并将凭证传递给AWS Lambda



问题描述:我在Bitbucket中有一个python代码,它被部署到AWS中,作为lambda函数执行。设置基于本指南:https://bitbucket.org/blog/aws-lambda-deployments-using-bitbucket-pipelines-and-pipes

在python代码中,我计划使用凭据(例如用于数据库访问(,而源代码显然是错误的存储位置。

建议的存储位置和向lambda函数传递凭据的方式是什么?

它应该是Bitbucket的存储库变量吗?如果是,那么如何将它们传递给lambda函数的代码?

还是应该是AWS Lambda环境变量?同样的问题。

您可以将它们存储在AWS SSM参数存储中,并在运行时获取它们。

这样你就可以管理谁可以访问它。把它放在env变量中会以明文形式向任何可以看到它的人显示秘密。

我的结构是这样的:

  1. 将机密放入加密的SSM参数中,这将使用KMS密钥
  2. 让您的lambda访问SSM参数和通过IAM使用的KMS密钥
  3. 在lambda ENV或配置文件中,放置SSM参数的路径
  4. 在lambda中,在启动期间获取参数并将其放入某个静态变量,这样同一(非冷启动(lambda的其他执行就不需要再次获取它

最新更新