温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mongo-engine中怎么配置mongo加密信息

发布时间:2021-06-21 17:15:10 来源:亿速云 阅读:135 作者:Leah 栏目:大数据

这篇文章给大家介绍mongo-engine中怎么配置mongo加密信息,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

config配置

对于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",
    }
]

Model代码

class OriginalDataApplyModel(db.Document):
    meta = {
        "db_alias": "test",                                 # 关联alias为test的库配置
    }
    user_id = StringField(required=True)

调用case

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加密信息就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI