温馨提示×

温馨提示×

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

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

MongoDB管理用户的认证机制是怎样的

发布时间:2021-09-29 10:28:21 来源:亿速云 阅读:158 作者:柒染 栏目:关系型数据库

MongoDB管理用户的认证机制是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

一、MongoDB用户认证机制简介

为了认证客户端,你必须要添加一个对应的用户到MongoDB。基本的步骤分为以下几步:

  • 用户管理接口:db.createUser()方法可以创建一个用户,添加完成后可以分配角色给用户,第一个用户必须是管理员,用来管理其他用户。你也可以更新存在的用户,必须修改密码和权限。

  • 认证数据库:当添加一个用户后,你在某个指定的数据库中添加该用户,那么这个数据库对于该用户就是个认证数据库。一个用户可以有权限访问多个数据库,通过分配角色权限来做到。

  • 认证用户:为了认证用户,可以通过db.author()方法。

二、MongoDB用户认证示例

  • 在admin数据库中,创建一个超级用户,用于管理其他的的用户。

use admin
db.createUser({"user":"myadmin","pwd":"password","roles":["root"]})
  • 重新登录数据库,执行:show dbs,发现依然可以访问。我们需要开启数据库的认证机制,在配置文件中设置以下参数:

auth=true
  • 重启MongoDB,并且重新登录

MongoDB管理用户的认证机制是怎样的

  • 执行:show dbs,出现错误

MongoDB管理用户的认证机制是怎样的

  • 执行认证用户,执行show users查看用户信息

use admin
db.auth("myadmin","password")
show users

MongoDB管理用户的认证机制是怎样的

  • 执行: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管理用户的认证机制是怎样的

看完上述内容,你们掌握MongoDB管理用户的认证机制是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

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

AI