在无服务器节点实例上存储AWS IoT凭据的最佳方法?

时间:2017-12-19 21:53:56

标签: node.js aws-iot cloud9 serverless aws-codestar

我现有的本地托管服务器加载其iot身份+凭据,如下所示:

function initIot() {
  var device = awsIot.device({
     keyPath: './iot_credentials/ident-private.pem.key',
    certPath: './iot_credentials/ident-certificate.pem.crt',
      caPath: './iot_credentials/rootca.pem',
    clientId: 'iot-server-1',
        host: endpoint
  });

..我没有提交私钥&在任何地方。它安全地存在于服务器磁盘上。

我如何安全地将其迁移到在codestar上运行的无服务器cloud9设置?假设我信任我的AWS团队,我可以将其存储在项目的文件中吗?

2 个答案:

答案 0 :(得分:1)

无论IDE如何,都要保护代码中的敏感数据。您可以考虑的选项很少。

  • 您可以在Lambda中使用环境变量来存储文件内容。
  • 在具有受限访问权限的S3私有存储桶中感染它并在代码中检索它。
  • 使用DevOps将配置附加到CI / CD管道。
  • 您还可以使用AWS KMS存储敏感数据。

答案 1 :(得分:0)

只要这些文件被公共访问权限限制,我认为没问题。