美文网首页我爱编程
mongodb加密的总结

mongodb加密的总结

作者: GrasFish | 来源:发表于2018-03-31 15:07 被阅读0次

由于腾讯云的活动,我买下了腾讯云的服务器,本以为和阿里云无差别,于是就直接把所有文件搬到了腾讯云里面。
然而……没过两天,我居然被删库了!

麻蛋.png
一查才知道,是因为我的mongodb没有密码,任何人都能直接访问并修改我的数据库,就这样被删库了……之前写的文章啊。。

为mongodb添加密码

mogodb安装后并没有要求创建用户名密码,虽然这样方便上手,但其实并不安全,所以我们需要自己创建用户名。

  1. 首先要打开mongod(若未)


    image.png
  2. 然后再打开mongo进入mongodb环境


    image.png
  3. 进入到admin数据库,输入use admin

  4. 创建超级用户,输入下列指令(user,pwd可以自定义)
    db.createUser({user: 'root', pwd: '123456', roles: ['root']})
    就会提醒你创建成功了

    image.png
  5. 然后退出(ctrl + c)刚刚的mongod和mongo。由于我的数据库存放位置在c:\data\db,所以我通过以下指令来打开访问控制
    mongod --dbpath c:\data\db --auth
    同时也要重新打开mongo

  6. 在mongo里使用admin,use admin,然后show collections就会突然报错,如果没有之前的--auth启动的话,并没有问题,所以这时候要输入刚刚创建的用户,db.auth('root','123456'),如果返回1,则表示可以访问admin这个数据库了。

  7. 但并没有结束。我们还需要给其他库赋予权限。与admin一样,假如要添加blog一个账户,则可以进入blog,use blog
    输入以下指令,

db.createUser({
    user:'blog',
    pwd:'123456',
    roles:[
        {
            role:'readWrite',
            db:'blog'
        }
    ]
})

这里为blog添加了一个用户,权限是readWrite。现在就完成了blog库的权限管理。

关于node.js的mongoose库的用法

之前的连接数据库就是采用以下方式

mongoose.connect(
  "mongodb://localhost:27017/blog",
  err => {
    if (err) console.log(err);
    console.log("connected");
  }
);

如果像上面一样添加了权限的话,就需要改变以下了,设用户名密码是(root,123456)

mongoose.connect(
[+]  "mongodb://root:123456@localhost:27017/blog",
  err => {
    if (err) console.log(err);
    console.log("connected");
  }
);

注:生产环境使用mongodb://localhost:27017/blog,而实际环境需要改为mongodb://0.0.0.0:27017/blog

相关文章

  • mongodb加密的总结

    由于腾讯云的活动,我买下了腾讯云的服务器,本以为和阿里云无差别,于是就直接把所有文件搬到了腾讯云里面。然而……没过...

  • mongo(十八:安全架构)

    MongoBD安全架构:认证鉴权审计加密 MongoDB 用户认证方式 MongoDB 集群节点认证 传输加密 落...

  • 关于Mongodb的全面总结

    关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...

  • mongodb 使用参考

    关于mongodb创建索引的一些经验总结(转) MongoDb 数据迁移 MongoDB 更新数据 MongoDB...

  • MongoDB数据库安全

    前言: 此文为MongoDB官方文档翻译中文版,查看原文。 MongoDB提供各种功能,如身份验证、访问控制、加密...

  • 给Mongodb加密

  • MongoDB 加密登录

    在日常开发中我们不能让我们的数据库不需要账号和密码就直接裸露在外面,这样非常不安全,所以我们需要给数据库一定的权限...

  • Mongodb常用语法

    关于Mongodb的全面总结,学习mongodb的人,可以从这里开始! Mongodb集群搭建的三种方式 Mong...

  • MongoDB 运维实战总结

    MongoDB 运维实战总结 [TOC] 一、MongoDB 集群简介 MongoDB是一个基于分布式文件存储的数...

  • MongoDB查询总结

    MongoDB查询总结 MongoDB查询总结介绍普通查询查询举例聚合查询Map-Reduce接口方法定义参数说明...

网友评论

    本文标题:mongodb加密的总结

    本文链接:https://www.haomeiwen.com/subject/zkwgcftx.html