首页 > 数据库 >MongoDB用户权限管理,设置密码并连接

MongoDB用户权限管理,设置密码并连接

时间:2024-04-02 23:13:45浏览次数:27  
标签:admin MongoDB 数据库 db 用户 密码 权限 root

MongoDB用户权限管理,设置密码并连接
如何设置密码
在服务启动状态下,在命令行中输入mongo;
首先设置admin表的用户(必须,否则单独设置表用户无用),先执行use admin,再执行db.createUser({user: 'root', pwd: '123456', roles: ['root']}) ,此时会创建一个名为root,密码为123456,角色为root的用户,前两者可以自定义设置;
测试是否创建成功db.auth('root', '123456') ,返回1表示成功;
接下来为自己的数据库设置用户,假设我们的数据库名叫mydb先执行use mydb,再执行db.createUser({user:'myuser',pwd:'123456',roles: [{role:'readWrite',db:'mydb'}]}),此时会创建一个名为myuser,密码为123456,角色为只能读写的用户。

原文链接:https://blog.csdn.net/zmdmwh/article/details/125290115


# 进入admin数据库
use admin

# 创建admin超级管理员用户
db.createUser(
{ user: "admin",
customData:{description:"superuser"},
pwd: "admin",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

#创建一个不受访问限制的超级用户
db.createUser(
{
user:"root",
pwd:"123456",
roles:[{role:"root",db:"admin"}]
}
);

#创建一个业务数据库管理员用户
db.createUser({
user:"user001",
pwd:"123456",
customData:{
name:'jim',
email:'[email protected]',
age:18,
},
roles:[
{role:"readWrite",db:"db001"},
{role:"readWrite",db:"db002"},
'read'// 对其他数据库有只读权限,对db001、db002是读写权限
]
})

MongoDB数据库角色说明
数据库用户角色:read、readWrite;
数据库管理角色:dbAdmin、dbOwner、userAdmin;
集群管理角色:clusterAdmin、clusterManager、4. clusterMonitor、hostManage;
备份恢复角色:backup、restore;
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
超级用户角色:root
内部角色:__system

MongoDB中的role详解
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以在指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限
root:只在admin数据库中可用。超级账号,超级权限

 

标签:admin,MongoDB,数据库,db,用户,密码,权限,root
From: https://www.cnblogs.com/shy1766IT/p/18111700

相关文章

  • mongodb连接字符串
    mongodb://localhost:27017mongodb://root:123456@localhost:27017/testdb?authSource=admin1、连接本地数据库服务器,端口是默认的。mongodb://localhost2、使用用户名fred,密码foobar登录localhost的admin数据库。mongodb://fred:foobar@localhost3、使用用户名fred,密码fo......
  • WSL 2 访问 Windows 文件权限为 777 的解决方案
    起因一般来说,我们希望一个文件的权限不为777,理由如下:ls的时候看到一堆绿色带星文件新建新的.py或*.sh文件后,不需要额外进行chmod就能执行,但在真正的Linux环境上是需要chmodu+x的。可能意外执行了一个.cpp文件。但其实作为一个OIer,以上东西都没什么影响,但是......
  • 若依框架新建用户强密码验证
    代码:若以框架中ruoyi-ui/src/views/system/user/index.vue页面中:在data()里加:constcheckPassword=(rule,value,callback)=>{if(!/[A-Z]+/.test(value)||!/[a-z]+/.test(value)||!/\d+/.test(value)||!/[`~!@#$%^&*()\-=_+,.?<>/;':"\[\]{}|\......
  • Linux Red Hat重置密码和修改GRUB密码
    前言我们在使用Linux红帽的过程中可能会忘记root密码,很多小伙伴可能会重装红帽,接下来介绍两种省时省力又简便的方法。修改GRUB密码在重置密码之前我们需要注意两点,第一点是GRUB界面我们有时间限制,有些小伙伴可能还没反应过来就已经进入登录界面,所以我们需要修改相关的配置文......
  • 若以框架修改密码时强密码校验
     代码:若以框架中ruoyi-ui/src/views/system/user/profile/resetPwd.vue页面中:在data()里加:constcheckPassword=(rule,value,callback)=>{if(!/[A-Z]+/.test(value)||!/[a-z]+/.test(value)||!/\d+/.test(value)||!/[`~!@#$%^&*()\-=_+,.?<>/;'......
  • 去除电脑的管理员密码、安装金格浏览器
    问题:忘记笔忘本电脑管理员的密码思路:制作PE系统的U盘启动盘,设置BIOS从U盘启动,进入后重置管理员的密码为空后。重启电脑即可第一步:下载制作启动用U盘的工具   https://www.bilibili.com/video/BV1qk4y1c7AH/?spm_id_from=333.337.search-card.all.click&vd_source=d1cc9a7......
  • linux中新建、删除、赋权限文件
    新建文件(非目录)touch新建一个空文件,如果文件已存在,则只更新其访问时间和修改时间。使用echo命令,并通过重定向将输出内容写入到一个新文件中,这样可以创建一个空文件,如果文件已存在则会覆盖之前内容。使用vi文本编辑器可以打开文件进行编辑,如果文件不存在则会新建新建的文......
  • 【Easy云盘 | 第三篇】登录注册模块上篇(获取验证码、发送邮箱验证码、登录、注册、重
    前言该Easy云盘非原创,原作者为B站程序员老罗本人不分享本项目源码,只记录项目日记,学习项目技术思路,支持项目付费B站项目学习链接:Springboot项目实战easypan仿百度网盘计算机毕业设计简历项目项目经验(后端)该项目难点:上传文件(大文件的分片与合并、视频文件的分片)、删......
  • 密码攻击
    目录简介类型暴力破解字典攻击社会工程学攻击应对暴力破解和字典攻击社会工程学攻击总结简介密码攻击是指攻击者尝试通过各种手段破解或获取密码,从而非法访问受保护的系统或服务。密码攻击可以对个人隐私、商业机密、国家安全等造成严重威胁。类型暴力破解暴......
  • MISC专项-常规密码篇
    一.Rabbit(Rabbit加密)1.解开压缩包,打开文件,发现一串字符串U2FsdGVkX1/+ydnDPowGbjjJXhZxm2MP2AgI,既不是base64等常见算法,看来是一些新起的加密方式。2.上网搜索Rabbit解码,发现真的有这个网站,直接复制进去解码,得到flag。二.篱笆墙的影子(栅栏密码)1.解开压缩包,打开文件,发现一串......