在Azure Key Vault中存储MySQL Enterprise加密密钥

3
MySQL服务器企业版与Hashicorp集成,以加密数据。 如 MySQL文档所述,加密密钥存储在HashiCorp vault中。
根据HashiCorp文档[1] [2],我们可以使用Azure Key Vault来存储秘密。
是否可能将MySQL-HashiCorp-Azure Key Vault集成,以便:
  • 使用HashiCorp对MySQL企业版进行加密
  • 加密密钥存储在AKV中。
更多详细信息:我已经在kv(Hashicop)保险库中保存和读取MySQL加密密钥。 但是,我想配置从Azure Key Vault读取和存储此密钥的方式。
像这样配置MySQL服务器:
[mysqld]

early-plugin-load=keyring_hashicorp.so

keyring_hashicorp_role_id='XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX'

keyring_hashicorp_secret_id='XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX'
keyring_hashicorp_store_path='/azure/mysql'

在 Azure 中,我已经设置了
vault read azure/creds/my-role
Key                Value
---                -----
lease_id           azure/creds/my-role/XXXXXXXX
lease_duration     1h
lease_renewable    true
client_id          XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX
client_secret      XXXXXXXX

我该如何设置keyring_hashicorp_store_path以从Azure获取密钥?
我找不到任何配置选项、教程或文档来使这三个组件一起工作。

你不会看到这个,因为它通常违反身份验证最佳实践。在生产环境中,您始终希望使用托管标识或具有证书的服务主体。 我有一个隐隐的感觉,你实际上是在问如何在本地开发期间轻松从开发人员凭据切换到应用程序凭据以供生产使用?请查看此链接:https://learn.microsoft.com/en-us/azure/key-vault/general/service-to-service-authentication - Thad Guidry
这可能更多涉及“静态加密”,以及“应用凭据”。https://learn.microsoft.com/en-us/azure/mysql/howto-data-encryption-portal - Thad Guidry
根据您试图保护的内容,更重要的是在DevOps的哪个周期,您可能会对预览中基于Azure资源管理器构建的新Azure RBAC系统非常感兴趣。https://learn.microsoft.com/en-us/azure/key-vault/general/rbac-guide - Thad Guidry
1个回答

0

是的,这是可能的。我假设您想要存储一些用于解封 HashiCorp Vault 的密钥,以便在需要访问密钥时解封该 Vault...并且您希望将这些解封密钥存储在另一个类似 Azure Key Vault 的 Vault 中?与任何 Key Vault 一样,您可以在其中存储任何密钥、值,甚至是小型文本文档,只要不超过 Vault 最大安全加密范围的限制(请参阅每个服务提供的密码学密钥存储的文档,或向其支持人员询问)。

需要注意的是,MySQL 的 HashiCorp 插件也这样说:

生成这些 AppRole 角色 ID 和秘密 ID 凭据后,它们预计会无限期保持有效。它们不需要再次生成,并且 keyring_hashicorp 插件可以配置为长期使用它们。有关 AuthRole 认证的更多信息,请访问 https://www.vaultproject.io/docs/auth/approle.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接