这篇文章给大家介绍mongo-engine中怎么配置mongo加密信息,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
对于mongo有加密填写username, password, authentication_source
多库配置用alias区分(不填则默认为default), 在后面使用时会用到
MONGODB_SETTINGS = [
{
"db": "openplatform_datacenter",
"host": ["localhost:27017", "localhost:27018"],
"username": "",
"password": "",
"authentication_source": "admin",
},
{
"db": "test",
"host": ["localhost:27017", "localhost:27018"],
"username": "",
"password": "",
"authentication_source": "admin",
"alias": "test",
}
]
class OriginalDataApplyModel(db.Document):
meta = {
"db_alias": "test", # 关联alias为test的库配置
}
user_id = StringField(required=True)
extensions.py
# coding: utf-8
from flask_mongoengine import MongoEngine
db = MongoEngine()
def init(app):
db.init_app(app)
test.py
# coding: utf-8
from extensions import db
pymongo_default = db.get_db() # 获取pymongo db实例, 使用MONGODB_SETTINGS中alias为default的配置
pymongo_default["test"].insert({"name": "test_alias"}) # 往openplatform_datacenter库的test表插入数据
pymongo_test = db.get_db("test") # 获取pymongo db实例, 使用MONGODB_SETTINGS中alias为test的配置
pymongo_test["test"].insert({"name": "test_alias"}) # 往test库的test表插入数据
BoxModel.objects().create(user_id="123") # 利用orm往test库的box_model表插入数据
注意mongo加密只对某个db生效, 所以这里用db.get_db()时会加入mongo验证(执行MongClient.auth), 然后获得库实例.
关于mongo-engine中怎么配置mongo加密信息就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/u/259383/blog/3083751