十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
MongoDB管理用户的认证机制是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
成都创新互联公司是一家集网站建设,南京企业网站建设,南京品牌网站建设,网站定制,南京网站建设报价,网络营销,网络优化,南京网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。为了认证客户端,你必须要添加一个对应的用户到MongoDB。基本的步骤分为以下几步:
用户管理接口:db.createUser()方法可以创建一个用户,添加完成后可以分配角色给用户,第一个用户必须是管理员,用来管理其他用户。你也可以更新存在的用户,必须修改密码和权限。
认证数据库:当添加一个用户后,你在某个指定的数据库中添加该用户,那么这个数据库对于该用户就是个认证数据库。一个用户可以有权限访问多个数据库,通过分配角色权限来做到。
认证用户:为了认证用户,可以通过db.author()方法。
在admin数据库中,创建一个超级用户,用于管理其他的的用户。
use admin db.createUser({"user":"myadmin","pwd":"password","roles":["root"]})
重新登录数据库,执行:show dbs,发现依然可以访问。我们需要开启数据库的认证机制,在配置文件中设置以下参数:
auth=true
重启MongoDB,并且重新登录
执行:show dbs,出现错误
执行认证用户,执行show users查看用户信息
use admin db.auth("myadmin","password") show users
执行:show dbs,就能正常执行了。
在mydemo数据库中,创建一个新的用户
use mydemo db.createUser({"user":"user1","pwd":"password","roles":["read"]}) 注意:该用户只有读的角色
执行下面的操作,进行测试。
切换用户: db.auth("user1","password") 查询collection:db.emp.findOne() --> 可以正常操作 插入新文档:db.testtable2.insert({"name","Tom"}) ---> 出错
修改用户的密码
db.updateUser("user1",{"pwd":"abcd"})
查看用户:show users
看完上述内容,你们掌握MongoDB管理用户的认证机制是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联-成都网站建设公司行业资讯频道,感谢各位的阅读!