Mongodb常用的身份验证方式

 更新时间:2017年08月27日 09:04:42   作者:伍仪洲  
对MongoDB部署启用访问控制会强制执行用户身份验证,要求在登录MongoDB系统用户识别自己。 当访问启用了访问控制的MongoDB部署时,用户只能执行由其角色确定的操作。

1. 介绍

不管数据库是在多安全的环境或者本地环境,给数据库建立一个安全的环境是很有必要的。

Mongodb提供了一系列的 安全功能 ,这里介绍一种很常用的身份验证方式。

2. 开启验证

默认情况下,只要在启动数据库的时候没有加上 --auth 选项,就是没有身份验证功能的,所有客户端都可以进行所有权限的操作。

如果加上过后,我们就可以通过安全的身份验证连接数据库。如果要在数据库中进行身份验证,可以通过 db.auth(username, password) ,如果验证成功则返回1,反之。

3. 建立用户

建立用户我们可以通过 db.createUser()  方法来建立用户,比如下面这样:

db.createUser({user: 'username', pwd: 'password', roles: [
  {role: 'read', db: 'test'}
]});

db.createUser 方法的接受一个对象,里面的user代表用户名,pwd代表密码,而roles是一个数组可以接受多个对象,每个对象可以对应作用于的数据库,其中的role字段代表对作用的数据库的权限,官方规定了一些列的内置角色,可以通过 文档查询 。

4. 删除用户

删除用户需要具有权限的用户进行操作,通过 db.dropUser() 方法进行,接受一个字符串,这个字符串就是用户名:

db.dropUser('user1');

5. 获取用户

可以通过 db.getUser() 方法来获取用户信息,同样它接受一个字符串,字符串为用户名:

db.getUser('user1');

相关文章

  • MongoDB的常用命令汇总(Mongo4.2.8)

    MongoDB的常用命令汇总(Mongo4.2.8)

    这篇文章主要介绍了MongoDB的常用命令汇总(Mongo4.2.8),给大家介绍了集合collection相关、用户相关、数据库相关内容,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • Mongodb 副本集搭建问题总结及解决办法

    Mongodb 副本集搭建问题总结及解决办法

    这篇文章主要介绍了Mongodb 副本集搭建问题总结及解决办法的相关资料,在Mongodb 副本集搭建过程中会遇到很多问题,这里就对常见问题进行总结并提供解决办法,需要的朋友可以参考下
    2016-12-12
  • mongoDB重装或升级版本后,启动失败原因及解决方法

    mongoDB重装或升级版本后,启动失败原因及解决方法

    这篇文章主要为大家分享一下重装mongodb或者升级mongdb版本后,重启启动也没有任何错误提示,但是查看为失败failed状态,没有启动成功问题的解决方法
    2024-05-05
  • MongoDB诡异问题之sh.stopBalancer卡住的解决方法

    MongoDB诡异问题之sh.stopBalancer卡住的解决方法

    这篇文章主要给大家介绍了关于MongoDB诡异问题之sh.stopBalancer卡住解决的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-03-03
  • MongoDB集合的增删改查管理

    MongoDB集合的增删改查管理

    这篇文章介绍了MongoDB集合的增删改查管理,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • MongoDB模糊查询正则regex(类似like 和 not like)

    MongoDB模糊查询正则regex(类似like 和 not like)

    在类关系型数据库中,like和not like是常用的模糊查询操作符,它允许我们在匹配字段的时候使用通配符,在MongoDB中,也有类似的操作符,MongoDB 可以使用 $regex 操作符来设置匹配字符串的正则表达式,MongoDB 使用 PCRE(Perl 兼容的正则表达式)作为正则表达式语言
    2024-02-02
  • Mongodb在UPDATE操作中使用$pull的操作方法

    Mongodb在UPDATE操作中使用$pull的操作方法

    在UPDATE中使用$pull操作符,删除数组中的指定元素或删除符合条件的数组元素,本文基于Mongodb的官方文档,介绍使用$pull, 按照指定条件删除数组中的元素,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2024-06-06
  • MongoDB 快速入门

    MongoDB 快速入门

    MongoDB 快速入门,想要学习MongoDB的朋友可以参考下。
    2011-10-10
  • mongodb实现同库联表查询方法示例

    mongodb实现同库联表查询方法示例

    在关系型数据库中,通过连接运算符可以实现多个表联合查询。而非关系型数据库的特点是表之间属于弱关联,下面这篇文章主要给大家介绍了关于mongodb实现同库联表查询的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-08-08
  • 关于单台MongoDB实例开启Oplog的过程详解

    关于单台MongoDB实例开启Oplog的过程详解

    这篇文章主要给大家介绍了关于单台MongoDB实例开启Oplog的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-09-09

最新评论