【问题标题】:How to manage encryption keys on the cloud?如何在云端管理加密密钥?
【发布时间】:2019-01-21 04:30:47
【问题描述】:

我想从软件即服务 (SaaS) 提供商处提供服务。 这是多租户环境(多家公司将使用应用程序的单个实例,具有单个数据库,在相同的硬件和相同的操作系统上运行)。

我们公司需要对我们的静态数据进行加密。

我读过的大部分指南都指出,密钥应由客户或第三方保管,而不是由云提供商保管。

如果我有钥匙;那么我公司的每个用户在登录后都需要密钥来访问文件存储吗?这将如何实际工作?密钥会与我的用户名和密码绑定吗?

其他选项是将密钥存储在云平台上的配置文件中并由云提供商管理。但这会带来另一个问题,即保护配置文件的安全以及将我们的密钥放在共享平台上的风险。

云提供商可以在哪里安全地存储密钥,以便只有我和我的员工可以使用它?

在云上加密数据时,在密钥管理方面的最佳做法是什么?

我的研究中的最佳实践如下:

• 将密钥存储在客户或第三方处

• 只有授权人员才能访问密钥。

• 不要将密钥与数据存储在同一平台上。

【问题讨论】:

    标签: encryption key saas


    【解决方案1】:

    我读过的大部分指南都指出,密钥应由客户或第三方保管,而不是由云提供商保管。

    做出这样的陈述很容易,执行起来却更难。

    但是 - 如果一切都在云上,则需要共享数据,您也必须以某种方式共享密钥。我宁愿声明密钥应该与加密数据分开存储。然后你需要指定“单独”是什么。

    如果我有钥匙;那么我公司的每个用户在登录后都需要密钥来访问文件存储吗? 这将如何实际工作?密钥会与我的用户名和密码绑定吗?

    加密静态数据时 - 提供内容的服务需要密钥,而不是最终用户本身。我认为最终用户没有理由需要加密密钥来进行“静态”加密。如果密钥使用非对称加密进行加密,并且需要用户的私钥来解密密钥和数据,则例外情况。

    云提供商可以在哪里安全地存储密钥,以便只有我和我的员工可以使用它? 在云上加密数据时,在密钥管理方面的最佳实践是什么? 我的研究中的最佳实践如下:将密钥存储在客户或第三方那里,只有授权人员才能访问密钥。不要将密钥与数据存储在同一平台上。

    基本上你列出了你的选择。取决于什么对您来说“足够好”,以及您是否需要遵守某些规定。

    也许你不应该重新发明轮子,看看其他很多聪明人做了什么。看看大型云提供商(AWS、Azure、Google ......)他们是如何解决这个问题的。你不是第一个也不是最后一个有这个要求的。

    每个更大的云提供商都有一个地方来管理机密和访问机密(例如,AWS 提供 KMS 和 Secret Manager,Azure 提供 KeyVault,......)。

    您也可以使用第 3 方凭证保险库,但您还需要将服务凭证存储在某处。

    【讨论】:

      猜你喜欢
      • 2021-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-19
      相关资源
      最近更新 更多