首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将加密的秘密存储在serverless.com项目的代码中?

如何将加密的秘密存储在serverless.com项目的代码中?
EN

DevOps用户
提问于 2017-03-17 09:11:17
回答 2查看 389关注 0票数 12

使用serverless.com,向AWS函数公开秘密的最简单方法是将其存储在serverless.yml文件中(例如,用KMS加密)。

但是将加密的秘密提交给Git并不是世界上最好的事情。首先,当秘密必须改变时,需要更改代码。

但仅就安全而言,还有什么更好的选择?例如,可以将秘密存储在S3 (加密)中,允许Lambda访问该位置和KMS密钥,但这是否更好呢?

EN

回答 2

DevOps用户

回答已采纳

发布于 2017-03-17 23:40:44

这里有几个要素需要考虑:

  1. 通过与正在配置的代码单独发布that来维护配置的能力是很有价值的。这样做鼓励以自动化方式轮换证书,定期这样做,使之无痛。
  2. 从“基础设施即代码”的角度来看,将所有配置存储在Git中是完全合理的,尽管可能在不同的存储库中,因为配置的范围可能跨越多个服务。
  3. 假设上述两条语句都与您的情况相关,我倾向于使用KMS加密数据,并将其存储在S3或DynamoDB中。我甚至要说,在非常简单的情况下,它可能适合于加密和存储KMS本身中的数据.

有几个开源库将支持此操作:

票数 7
EN

DevOps用户

发布于 2017-03-24 15:25:37

我通常将秘密视为范围内的配置数据。因此,它不与代码共存,因为它们由不同的发布计划和过程处理。一个单独的git、KMS、dynamo、s3或您的配置管理系统(厨师世界中的厨师库/加密数据库)是很好的地方。基本上,您不希望为了获得秘密更新而构建和部署新版本的软件。

如果您的秘密管理需求更加复杂,类似Hasicorp (https://github.com/hashicorp/vault)之类的东西将是一个不错的选择。

票数 1
EN
页面原文内容由DevOps提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://devops.stackexchange.com/questions/543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档