【发布时间】:2018-01-11 11:14:38
【问题描述】:
我对 Node.js 和 Express.js 非常陌生,我用它来编写 Web API 服务。 要启用 HTTPS,该服务使用以下代码:
const server = https
.createServer({
key: fs.readFileSync('./cert/myservice.key'),
cert: fs.readFileSync('./cert/myservice.crt')
})
.listen(serverConfig.server.port, () => logger.info(`MyService is up and running`));
很容易看出,此代码假定.key 和.crt 文件在服务应用程序位置本地可用。
如果我想将服务部署到单个 AWS EC2 主机(为了简单起见),这些文件必须在那里,这似乎不是一个安全的解决方案。
我正在考虑使用 AWS IAM 来保护机密。 问题是不可能直接从 IAM“部署”/使机密可用到 EC2 节点。 我必须使用 IAM 的 API 来获取机密,但问题是如何使 AWS 凭证在 EC2 上可用。
问题:是否有推荐的安全方式将机密(包括证书和密钥)部署到 AWS EC2 节点?
【问题讨论】:
标签: node.js amazon-web-services express amazon-ec2 https