zoukankan      html  css  js  c++  java
  • [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 db01
    db.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 admin
    db.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的超级管理员。

  • 相关阅读:
    Service Workers里的CacheStorage和Cache
    application cache和localstorage的区别
    localStorage和sessionStorage区别
    Ubuntu软件的安装和使用
    C++之数据类型
    C++之C++的词法单位
    C++之语言概述
    Ubuntu双系统无法挂载Windows10 硬盘的解决方法
    opencv 显示摄像头数据
    Ubuntu 中使用git 上传代码
  • 原文地址:https://www.cnblogs.com/lemonbar/p/3915248.html
Copyright © 2011-2022 走看看