MongoDB添加用户
1、添加超级管理员用户
1)切换到admin数据库
>use admin
2)添加管理员用户
>db.addUser("admin","admin")
添加了一个叫admin的用户,密码是admin。拥有对任意数据库的所有权限
3)查看已添加的用户
>db.system.users.find()
{ "_id" : ObjectId("528c24eb30c8aafadfc15f60"), "user" : "admin", "readOnly" : false, "pwd" : "7c67ef13bbd4cae106d959320af3f704" }
2、添加普通用户
1)切换到普通数据库mydb
>use mydb
2)添加一个用户,只给予读权限
db.addUser(
{
user:"lihuai",
pwd:"",
roles:["read"]
}
)
3)添加一个用户,作为mydb数据库的管理员
db.addUser("heyman","123456")
4)以认证方式启动mongodb
[mongodb@localhost bin]$ ./mongod --dbpath=/home/mongodb/data --logpath=/home/mongodb/logs/mongodb.log --auth --fork
5)以用户lihuai登录mydb
[mongodb@localhost bin]$ ./mongo 127.0.0.1:27017/mydb -ulihuai -p123456
发现可以查询,但是写入的时候会提示
> db.users.insert({name:"zhangsan",age:30})
not authorized for insert on mydb.users
>
6)以管理员heyman登录mydb,可以对mydb数据库进行读写操作,但不能对其他数据库进行任何操作
7)超级管理员admin需登录到admin数据库后,再切换到其他数据库进行任何操作
[mongodb@localhost bin]$ ./mongo 127.0.0.1:27017/admin -uadmin -padmin
MongoDB shell version: 2.4.8
connecting to: 127.0.0.1:27017/admin
> use mydb
switched to db mydb
>
虽然是超级管理员,但是admin不能直接登录其他数据库
[mongodb@localhost bin]$ ./mongo 127.0.0.1:27017/mydb -uadmin -padmin
MongoDB shell version: 2.4.8
connecting to: 127.0.0.1:27017/mydb
Wed Nov 20 11:22:26.916 Error: 18 { code: 18, ok: 0.0, errmsg: "auth fails" } at src/mongo/shell/db.js:228
exception: login failed
[mongodb@localhost bin]$
MongoDB添加用户的更多相关文章
- mongodb添加用户和认证
Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...
- MongoDB添加用户验证
Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...
- mongodb 添加用户报错TypeError:db.addUser is not a function (mongodb3.4.1)
1:问题如下: 原因是 新版的MongoDB已经不支持addUser方法了. 改成createUser了. 使用方法如下 2:具体解释一下db.createUser()方法的用法 定义: 创 ...
- mongodb 添加用户
use admindb.createUser({ user:"admin", pwd:"abc123456", roles:[{role:"root& ...
- mongodb之用户/认证/角色/权限管理
前言 用户权限管理很重要,只给需要的权限,防止应用系统漏洞导致脱库 认证和授权 Authentication 认证识别,解决我是谁 Authorization 操作授权,我能做什么 认证机制 MONG ...
- macos下mongoDB 3.4.5 添加用户、设置权限
macos下mongoDB 3.4.5 添加用户.设置权限 在项目中需要根据项目运行环境访问,以不同的身份访问各自的db,所以研究了一下MongoDB的 需求: 给MongoDB添加两个用户分别用 ...
- MongoDB的用户管理(6)
注意: A)在mongodb中,有一个admin数据库, 牵涉到服务器配置层面的操作,需要先切换到admin数据. 即 use admin , -->相当于进入超级用户管理模式. B)mongo ...
- mongoDB之用户及权限设置
之前用MongoDB没有设置用户和权限,一直都是本机应用程序连接MongoDB.在服务器上部署后对外没有开数据库连接端口,本机应用程序连接再开放应用程序端口供外部访问. 我部署的环境是ubuntu 1 ...
- 【Mongodb】用户和认证 权限总结
开启MongoDB服务时不添加任何参数时,默认是没有权限验证的,登录的用户可以对数据库任意操作而且可以远程访问数据库! 在刚安装完毕的时候MongoDB都默认有一个admin数据库,此时admin ...
随机推荐
- eclipse开发Android程序sdk和avd的图标不见了
在eclipse中开发我们的Android程序时,安装sdk是必不可少的,有时候会出现sdk和avd的图标都不见了的情况,一般出现这种情况的原因是你从别处copy了一个sdk的包然后直接在引用造成的, ...
- 使用maven编译dubbo,导入eclipse(其他maven开源项目编译类似)
dubbo github下载地址:https://github.com/alibaba/dubbo 相关文档:http://dubbo.io/ 使用maven编译dubbo,导入eclipse(其他m ...
- asp.net中virtual和abstract的区别
这篇文章主要介绍了asp.net中virtual和abstract的区别,较为详细的分析了virtual与abstract的概念与具体用法,并以实例的形式予以总结归纳,需要的朋友可以参考下 本文实例分 ...
- java中 == 与 equal区别 转
java中的数据类型,可分为两类:1.基本数据类型,也称原始数据类型.byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==) ...
- C转义字符
C语言输出特殊字符 C语言转义字符意义大体同于前面的C#转义字符,这里列出用c语言,输出%d.\n等特殊字符的方法. #include <stdio.h> int main() { pri ...
- mysqldump: Got error: 1556: You can't use locks with log tables. when using LOCK TABLES
mysqldump: Got error: 1556: You can't use locks with log tables. when using LOCK TABLES 我是把一些mysqldu ...
- Spark(三): 安装与配置
参见 HDP2.4安装(五):集群及组件安装 ,安装配置的spark版本为1.6, 在已安装HBase.hadoop集群的基础上通过 ambari 自动安装Spark集群,基于hadoop yarn ...
- ajax简单案例:字符串返回类型
小知识点: implode("^",$v) 拼数组为字符串, split/explode("|") 拆字符串为数组; "你好"-> ...
- mootools里选择器$,$$,$E,$ES等的区别
区别就是 $和$$都是1个参数, $适用于ID,或者ID代表的对象 $$适用于CSS选择器 $E和$ES,有2个参数,第二个参数是可选参数代表(filter,即某个ID范围里的元素) $E('inpu ...
- 【转】深入分析 iBATIS 框架之系统架构与映射原理
深入分析 iBATIS 框架之系统架构与映射原理 iBATIS 通过 SQL Map 将 Java 对象映射成 SQL 语句和将结果集再转化成 Java 对象,与其他 ORM 框架相比,既解决了 Ja ...