Encryption 如何使用客户机管理的密钥加密Kubernetes吊舱使用的实际存储/卷(提供商端对密钥的了解最少/为零)?

Encryption 如何使用客户机管理的密钥加密Kubernetes吊舱使用的实际存储/卷(提供商端对密钥的了解最少/为零)?,encryption,kubernetes,kubernetes-security,Encryption,Kubernetes,Kubernetes Security,我希望在我的kubernetes环境中有一个每个客户机的名称空间和存储,其中每个客户机运行一个专用的应用程序实例,并且只有客户机能够加密/解密该特定客户机的应用程序使用的存储。 我在kubernetes环境中看到了数百个有关机密加密的示例,但都在努力实现由客户端控制的实际存储加密。是否可以在K8s环境中使用存储加密,只有客户端才知道加密密钥(而不是K8s管理员) Vault是安全访问机密的工具。秘密就是一切 要严格控制访问的,如API键, 密码或证书。Vault为任何 保密,同时提供严格的访问控

我希望在我的kubernetes环境中有一个每个客户机的名称空间和存储,其中每个客户机运行一个专用的应用程序实例,并且只有客户机能够加密/解密该特定客户机的应用程序使用的存储。
我在kubernetes环境中看到了数百个有关机密加密的示例,但都在努力实现由客户端控制的实际存储加密。是否可以在K8s环境中使用存储加密,只有客户端才知道加密密钥(而不是K8s管理员)

Vault是安全访问机密的工具。秘密就是一切 要严格控制访问的,如API键, 密码或证书。Vault为任何 保密,同时提供严格的访问控制和记录详细的 审核日志

您可能需要查看的一些功能:

  • API驱动的接口
    由于HTTP API,您可以通过编程方式访问它的所有功能。 此外,还有几个官方支持的编程语言库(Go和Ruby)。这些库使与Vault的API的交互更加方便。还有一个可用的命令行界面
  • 数据加密
    Vault能够在不存储数据的情况下对数据进行加密/解密。其主要含义是,如果发生入侵,即使攻击成功,黑客也无法获取真正的秘密
  • 动态秘密
    Vault可以根据需要为某些系统生成机密,例如AWS或SQL数据库。例如,当应用程序需要访问S3存储桶时,它会向Vault请求凭据,Vault将根据需要生成具有有效权限的AWS密钥对。创建这些动态机密后,Vault还会在租约到期后自动撤销这些机密。这意味着秘密在被读取之前是不存在的
  • 租赁和续约:Vault中的所有机密都有与之关联的租赁。租约结束时,Vault将自动撤销该秘密。客户可以通过内置的续订API续订租约
  • 方便的身份验证
    Vault支持使用令牌进行身份验证,这既方便又安全
  • Vault还可以自定义并连接到各种插件以扩展其功能。所有这些都可以通过web图形界面进行控制。

    您检查过hashicorp吗?