您当前的位置: 首页 >  mongodb

杨林伟

暂无认证

  • 3浏览

    0关注

    3337博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MongoDB配置用户名和密码

杨林伟 发布时间:2020-07-21 10:44:58 ,浏览量:3

01 引言

在前面博客已经讲解了MongoDB的安装,有兴趣的同学可以参阅:《Linux下安装MongoDB》,本文讲解如何新增MongoDB用户。

02 角色权限

角色权限:

角色权限数据库用户角色read、readWrite数据库管理角色dbAdmin、dbOwner、userAdmin集群管理角色clusterAdmin、clusterManager、clusterMonitor、hostManager备份恢复角色backup、restore所有数据库角色readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase超级用户角色root 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)内部角色system

权限说明:

权限说明Read允许用户读取指定数据库readWrite允许用户读写指定数据库dbAdmin允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profileuserAdmin允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户clusterAdmin只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限readAnyDatabase只在admin数据库中可用,赋予用户所有数据库的读权限readWriteAnyDatabase只在admin数据库中可用,赋予用户所有数据库的读写权限userAdminAnyDatabase只在admin数据库中可用,赋予用户所有数据库的userAdmin权限dbAdminAnyDatabase只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限root只在admin数据库中可用(超级账号,超级权限) 03 用户管理 3.1 新建管理员用户
cd /usr/local/mongodb/bin/

#客户端登录服务,注意,这里通过localhost登录,如果需要远程登录,必须先登录认证才行。 
./mongo --port 27017 

use admin  
db.createUser(
   {
		user: "admin1",
		pwd: “123456”,
		roles: [{role: ”userAdminAnyDatabase”,db:”admin”}]
   }
 )
3.2 创建普通用户
cd /usr/local/mongodb/bin/

#客户端登录服务,注意,这里通过localhost登录,如果需要远程登录,必须先登录认证才行。 
./mongo --port 27017 

use db_foo ##(用户数据库,自定义,根据实际场景命名)

#可以查看角色
show roles 

db.createUser(
    {
		user: "ylw",
		pwd: "123456",
		roles: ["readWrite","dbAdmin"]
    }
)
3.3 查看的用户
db.system.users.find()
3.4 删除用户
db.system.users.remove({user:"simpleUser"})
04 开启权限验证

在启动时指定--auth即需要授权才能操作:

①开启服务

/usr/local/mongodb/bin/mongod --auth -f /mongodb/single/mongod.conf 

②客户端连接并认证

cd /usr/local/mongodb/bin/

./mongo --port 27017 

use db_foo
db.auth("ylw","123456")

③关闭服务

cd /usr/local/mongodb/bin/
#客户端登录服务,注意,这里通过localhost登录,如果需要远程登录,必须先登录认证才行。 
./mongo --port 27017 
#切换到admin库 
use admin 
#关闭服务 
db.shutdownServer()
关注
打赏
1662376985
查看更多评论
立即登录/注册

微信扫码登录

0.2290s