是否有自动 backup/clone 数据库和转换机密数据的方法?
Is there an automated way to backup/clone a database and transform confidential data?
我在 MongoDB Atlas 上有一个生产数据库,我将其复制到暂存数据库中,以便我可以使用完整的数据集测试功能。
但是,我想确保将所有密码和机密字段更新为随机值或硬编码值(如“FOOBAR”),以免用户数据受到损害。
有通用的方法吗?
您需要编写一个 script/program 来对数据执行您想要的操作。
从那里,你有几个选择。
您可以使用 mongoexport
并将备份直接通过管道传输到脚本中(脚本需要是 shell 脚本)
您可以使用 mongodump 和 mongorestore 将数据库恢复到另一个位置,然后 运行 脚本 - 脚本可以在 javascript、运行 中:
mongodb [options] script.js
Atlas 中无法直接执行此操作。
我建议使用 field-level 加密,这样您就不必担心这个 - https://docs.mongodb.com/manual/core/security-client-side-encryption/ - 但转换重要字段需要时间,因此您可以使用上面的方法作为权宜之计。
我在 MongoDB Atlas 上有一个生产数据库,我将其复制到暂存数据库中,以便我可以使用完整的数据集测试功能。
但是,我想确保将所有密码和机密字段更新为随机值或硬编码值(如“FOOBAR”),以免用户数据受到损害。
有通用的方法吗?
您需要编写一个 script/program 来对数据执行您想要的操作。
从那里,你有几个选择。
您可以使用 mongoexport
并将备份直接通过管道传输到脚本中(脚本需要是 shell 脚本)
您可以使用 mongodump 和 mongorestore 将数据库恢复到另一个位置,然后 运行 脚本 - 脚本可以在 javascript、运行 中:
mongodb [options] script.js
Atlas 中无法直接执行此操作。
我建议使用 field-level 加密,这样您就不必担心这个 - https://docs.mongodb.com/manual/core/security-client-side-encryption/ - 但转换重要字段需要时间,因此您可以使用上面的方法作为权宜之计。