zoukankan      html  css  js  c++  java
  • mongodb07---用户权限

    用户管理:
    
    
    注意: 添加用户后,我们再次退出并登陆,发现依然可以直接读数据库?
    原因: mongodb服务器启动时, 默认不是需要认证的.
    要让用户生效, 需要启动服务器时,就指定 --auth 选项.
    这样, 操作时,就需要认证了.
    
    
    use admin   //在mongodb中,有一个admin数据库, 牵涉到服务器配置层面的操作,需要先切换到admin数据.即 use admin , 相当于进入超级用户管理模式。在mysql中建立用户名和密码是以库表主机为单位,mongo中简单一些是以库为单位的,每个数据库有自己的管理员。
    //要想设置用户,先切到admin下,建立一个管理员,以后这个管理员就是超级管理员。
    //需要先在admin数据库下建立管理员---这个管理员登陆后,相当于超级管理员.
    
    
    1: 添加用户
    命令:db.addUser();
    简单参数: db.addUser(用户名,密码,是否只读)
    
    1: 添加用户
    > use admin
    > db.addUser(‘sa’,’sa’,false);
    
    2: 认证
    > use test
    > db.auth(用户名,密码);
    
    3: 修改用户密码
    > use test
    > db.changeUserPassword(用户名, 新密码);
    
    3:删除用户
    > use test
    > db.removeUser(用户名);
    
    注: 如果需要给用户添加更多的权限,可以用json结构来传递用户参数
    例:
    > use test
    >db.addUser({user:'guan',pwd:'111111',roles:['readWrite,dbAdmin']});
    
    
    db.addUser();
    {user:'xx',pwd:'yy',roles:['readWrite']}
    一般用户可以简化为:  db.addUser(user,pwd,isReadOnly);
    
    roles有:
    read,readWrite,dbAdmin,userAdmin,clusterAdmin,readAnyDatabase,readWriteAnyDatabase,userAdminAnyDatabase,dbAdminAnyDatabase
    
    db.removeUser(userName);
    
    db.changeUserPassword(userName,newPwd);
    db.auth(user,pwd);
  • 相关阅读:
    Java 中的JOption函数
    01背包与完全背包(对比)
    AC注定不平坦(大神回忆录)
    背包精讲之——01背包
    动规问题概述(待整理)
    背包九讲
    Tautology(递推)||(栈(stack))(待整理)
    深度优先和广度优先区别
    Linux下JDK、Tomcat的安装及配置
    同IP不同端口Session冲突问题
  • 原文地址:https://www.cnblogs.com/yaowen/p/8151304.html
Copyright © 2011-2022 走看看