[MongoDB]学习笔记--User管理

1. 创建一个超级用户

use admin
db.createUser(
    {
        user: "adminUserName",
        pwd: "userPassword",
        roles:
        [
            {
                roles: "userAdminAnyDatabase",
                db: "admin"
            }
        ]
    }
)

超级用户的role有两种,userAdmin或者userAdminAnyDatabase(比前一种多加了对所有数据库的访问)。

db是指定数据库的名字,admin是管理数据库。

2. 用新创建的用户登录

mongo --host xxx -u adminUserName -p userPassword --authenticationDatabase admin

3. 查看当前用户的权限

db.runCommand(
    {
        usersInfo:"userName",
        showPrivileges:true
    }
)

4. 创建一般用户,也是用createUser

use db01db.createUser(
    {
        user:"oneUser",
        pwd:"12345",
        roles:[
            {role:"read",db:"db01"},
            {role:"read",db:"db02"},
            {role:"read",db:"db03"}
        ]
    }
)

5. 创建一个不受访问限制的超级用户

use admin
db.createUser(
    {
        user:"superuser",
        pwd:"pwd",
        roles:["root"]
    }
)

6. 修改密码

use admindb.changeUserPassword("username", "xxx")

7. 查看用户信息

db.runCommand({usersInfo:"userName"})

8. 修改密码和用户信息

db.runCommand(
    {
        updateUser:"username",
        pwd:"xxx",
        customData:{title:"xxx"}
    }
)

注:

1. 和用户管理相关的操作基本都要在admin数据库下运行,要先use admin;

2. 如果在某个单一的数据库下,那只能对当前数据库的权限进行操作;

3. db.addUser是老版本的操作,现在版本也还能继续使用,创建出来的user是带有root role的超级管理员。

[MongoDB]学习笔记--User管理

时间: 2024-11-07 20:03:24

[MongoDB]学习笔记--User管理的相关文章

MongoDB学习笔记—权限管理

1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b  MongoDB安装完成后,默认是不需要输入用户名密码即可登录的,但是往往数据库方面我们会处于安全性的考虑而设置用户名密码,本篇文章主要介绍了MongoDB添加管理员/普通用户的方法. c 在我们使用的关系型数据库中,一般都是含有权限控制的,也就是说配置什么用户访问什么数据库,什么数据表,什么用户

MongoDB学习笔记一:MongoDB的下载和安装

趁着这几天比较空闲,准备学习一下MongoDB数据库,今天就简单的学习了一些MongoDB的下载和安装,并创建了存储MongoDB的数据仓库.将自己今天学习到的写成博客分享给大家. 一.MongoDB的下载和安装 MongoDB的下载地址为:http://www.mongodb.org/ 1.进入官网的首页后,在首页的右上方单击Downloads连接,如图所示: 2.在页面中可以看到目前最新的版本和以前发布过的版本,这里选择最新版本,windows 32位的进行下载,文件的格式为ZIP格式的,单

mongodb学习笔记系列一

一.简介和安装 ./bin/mongod --dbpath /path/to/database --logpath /path/to/log --fork --port 27017 mongodb非常的占磁盘空间, 刚启动后要占3-4G左右,--smallfiles 二.基本命令 1.登录mongodb client /use/local/mongo 2.查看当前数据库 show databases; show dbs; 两个可能 3.admin是和管理有关的库,local 是放schema有关

MongoDB学习笔记:总览

[MongoDB学习笔记1]基于CentOS 6.5安装MongoDB http://281816327.blog.51cto.com/907015/1598270 [MongoDB学习笔记2]MongoDB基本知识 http://281816327.blog.51cto.com/907015/1598275 [MongoDB学习笔记3]处理MongoDB连接错误 http://281816327.blog.51cto.com/907015/1598277 [MongoDB学习笔记4]Mongo

MongoDB学习笔记系列

回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助和启发,文章中有对新技术的研究(Mongo驱动),对老技术的回顾(代码重构),还有对架构设计的阐述等(面向接口编程,对扩展开放,对修改关闭,所以出现了IMongoRepository接口). MongoDB学习笔记系列~目录 MongoDB学习笔记~环境搭建 (2015-03-30 10:34) M

Linux 程序设计学习笔记----进程管理与程序开发(下)

转载请注明出处:http://blog.csdn.net/suool/article/details/38419983,谢谢! 进程管理及其控制 创建进程 fork()函数 函数说明具体参见:http://pubs.opengroup.org/onlinepubs/009695399/functions/fork.html 返回值:Upon successful completion, fork() shall return 0 to the child process and shall re

MongoDB学习笔记(一:安装时出现The default storage engine 'wiredTiger' is not available问题解决)

今晚在自己老式笔记本来试了一下MongoDB的安装,由于配置比较低,只能选择32位版本的MongoDB进行安装,在安装过程中碰到了上述标题所示错误,自己也捣鼓了一个小时左右,终于在一篇博客中找到答案,具体原文链接如下:http://blog.csdn.net/u013457382/article/details/50775268 MongoDB学习笔记(一:安装时出现The default storage engine 'wiredTiger' is not available问题解决)

Mongodb学习笔记

总结下这几天Mongodb学习笔记 /** * 获取MongoClient * @author xuyw * @email [email protected] * @param host * @param port * @return */ public static MongoClient getMongoClient(String host, int... port) { MongoClient mongoClient = null; int portlen = 0; try { if (p

[Spring Data MongoDB]学习笔记--建立数据库的连接

1. 有了上一篇的Mongo后,连接数据库我们还需要更多的信息,比如数据库名字,用户名和密码等. 我们可以继续来配置MongoDbFactory的实例. public interface MongoDbFactory { DB getDb() throws DataAccessException; DB getDb(String dbName) throws DataAccessException; } 然后我们可以继续用MongoDbFactory来创建MongoTemplate的实例. pu