繁体   English   中英

使用本地密钥MONGODB启用数据加密时出错

[英]Error when enabling data encryption using local key MONGODB

我已经成功加密了mongoDB中的通信,但是当我尝试启用数据加密时,我遇到了错误。 我正在使用版本为3.2.4的mongoDB企业版。 我在控制台中收到以下消息:

ERROR: child process failed, exited with error number 14

但是当我查看日志时,我看到如下详细错误:

Unable to retrieve key .system, error: there are existing data files, but no valid keystore could be located.
Fatal Assertion 28561

以下是我的配置文件的片段:

# enable authentication
security:
  authorization: enabled
  enableEncryption: true
  encryptionKeyFile: /home/test/mongodb-keyfile

没有enableEncryptionencryptionKeyFile参数,它工作正常。 谁能解释一下我在这里缺少什么? 谢谢!

MongoDB的加密存储引擎支持两种密钥管理选项:

  • 密钥管理器 :通过密钥管理互操作性协议(KMIP)与第三方密钥管理设备集成。
  • 本地密钥 :通过密钥文件使用本地密钥管理。

值得一提的是,使用密钥管理器符合监管密钥管理指南, 建议通过本地密钥管理。

如果您使用的是密钥管理器选项,请参阅KMIP主密钥轮换

由于您使用的是本地密钥选项,因此如果您具有副本集部署 ,则可以旋转副本集成员 这会将数据从未加密的mongod 重新同步到加密的mongod

或者,如果您只有一个独立的mongod ,您可以:

  1. 备份数据库文件。
  2. 停止mongod进程。
  3. 删除或移动dbpath现有数据库文件。 要格外小心! - 如果要删除,请确保您有备份数据
  4. 使用--enableEncryption--encryptionKeyFile重新启动mongod
  5. 将备份文件还原到重新启动和加密的mongod

例如 ,您可以使用mongodump转储数据,并使用mongorestore来恢复转储文件。

最后,请注意MongoDB Enterprise Edition是商业支持的产品。 如果您有商业支持订阅,我建议您打开支持案例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM