aws-lambda - 如何在无服务器中保护 AWS 访问密钥
问题描述
我正在编写一个连接到 DynamoDB 的无服务器应用程序。
目前我正在从 json 文件中读取访问密钥 ID 和安全访问密钥。
我将使用 Jenkins 进行 CI 并且需要一种方法来保护这些密钥。
我要做的是将密钥设置为环境变量并在应用程序中读取它们。但问题是我不知道每次启动 lambda 函数时如何设置环境变量。
我读过有一种方法可以在 serverless.yml 文件中配置它,但不知道如何。
如何做到这一点?
解决方案
不要使用环境变量。使用附加到您的 lambda 函数的 IAM 角色。AWS Lambda 代表您担任该角色,并在您的函数运行时将凭证设置为环境变量。您甚至不需要自己阅读这些变量。所有 AWS 开发工具包都会自动读取这些环境变量。
推荐阅读
- spring-boot - 如何在 Spring Boot Junit 测试用例中覆盖 @Primary bean
- javascript - 在桌面上预览设备字体(不使用浏览器设备工具)
- javascript - 在具有重复符号的字符串数组中查找字符串
- business-objects - WEBI 查找重复行(某些列除外)并突出显示
- go - VSCode 使用启动配置在文件夹中运行所有 go 测试
- python - 如何使用#Python 从网站下载音乐文件
- flutter - 在 TextFormField 上使用snackBar 创建自定义错误消息
- wordpress - Woocommerce 单一产品页面无法正常工作
- mongodb - 当 _id 动态生成时,mongoosastic 引用如何不起作用
- visual-studio - 简单的 void 方法有效,但协程抛出空引用异常