mongodb用户和密码登录(代码片段)

sz-wenbin sz-wenbin     2022-12-19     483

关键词:

一、MongoDB中内置角色

角色 介绍
read 提供读取所有非系统的集合(数据库)
readWrite 提供读写所有非系统的集合(数据库)和读取所有角色的所有权限
dbAdmin 提供执行管理任务的功能,例如与架构相关的任务,索引编制,收集统计信息。此角色不授予用户和角色管理权限。
dbOwner 提供对数据库执行任何管理操作的功能。此角色组合了readWrite,dbAdmin和userAdmin角色授予的权限。
userAdmin 提供在当前数据库上创建和修改角色和用户的功能。由于userAdmin角色允许用户向任何用户(包括他们自己)授予任何权限,因此该角色还间接提供对数据库的超级用户访问权限,或者,如果作用于管理数据库,则提供对群集的访问权限。
clusterAdmin 提供最佳的集群管理访问。此角色组合了clusterManager,clusterMonitor和hostManager角色授予的权限。此外,该角色还提供了dropDatabase操作。
readAnyDatabase 仅在admin 数据库中使用,提供所有数据库的读权限。
readWriteAnyDatabase 尽在admin 数据库中使用,提供所有数据库的读写权限
userAdminAnyDatabase 尽在admin 数据库中使用,提供与userAdmin相同的用户管理操作访问权限,允许用户向任何用户(包括他们自己)授予任何权限,因此该角色还间接提供超级用户访问权限。
dbAdminAnyDatabase 仅在admin 数据库中使用,提供与dbAdmin相同的数据库管理操作访问权限,该角色还在整个群集上提供listDatabases操作。
root 尽在admin 数据库中使用,提供超级权限

二、创建管理员用户

创建管理员

连接mongodb

 

mongo --host 10.10.18.11

 

use admin
db.createUser(
  
    user: "myUserAdmin",
    pwd: "abc123",
    roles: [  role: "userAdminAnyDatabase", db: "admin" , "readWriteAnyDatabase" ]
  
)

创建管理员账号:myUserAdmin 密码:abc123

 

查看创建的管理员账号

use admin
db.getUser("myUserAdmin")

重启MongoDB实例

连接MongoDB

1、类似Mysql一样连接

mongo --host 10.10.18.11 -u "myUserAdmin" --authenticationDatabase "admin" -pabc123

结果:

1 MongoDB shell version v4.0.10
2 connecting to: mongodb://10.10.18.11:27017/?authSource=admin&gssapiServiceName=mongodb
3 Implicit session: session  "id" : UUID("3b067347-1b0e-4761-9399-cb3ad4ba6c93") 
4 MongoDB server version: 4.0.10

2、登录后进行验证

连接mongodb

mongo --host 10.10.18.11

进行验证

rs0:PRIMARY> use admin
switched to db admin
rs0:PRIMARY> db.auth("myUserAdmin", "abc123" )
1

三、创建普通用户

创建一个普通用户

用户名:myTester
密码:xyz123
权限:读写数据库 test, 只读数据库 reporting。

use test
db.createUser(
  
    user: "myTester",
    pwd: "xyz123",
    roles: [  role: "readWrite", db: "test" ,
              role: "read", db: "reporting"  ]
  
)

普通用户连接MongoDB实例

mongo --host 10.10.18.11 -u "myTester" --authenticationDatabase "test" -pxyz123 

结果:

1 MongoDB shell version v4.0.10
2 connecting to: mongodb://10.10.18.11:27017/?authSource=test&gssapiServiceName=mongodb
3 Implicit session: session  "id" : UUID("3e9011ee-729f-4112-acd1-f5d1515490ac") 
4 MongoDB server version: 4.0.10

验证权限

在test集合中插入、查询数据

rs0:PRIMARY> db.test.insertOne(name:"sue",age:19,status:p)

        "acknowledged" : true,
        "insertedId" : ObjectId("5d00b364a75d40ae9b83c64c")

rs0:PRIMARY> db.test.find(name:"sue")
 "_id" : ObjectId("5d00b364a75d40ae9b83c64c"), "name" : "sue", "age" : 19, "status" : "p" 

 

javascript如何使用server实例指定mongodb用户名和密码?(代码片段)

查看详情

mongodb设置用户密码(代码片段)

场景:某项目用了mongodb,然后mongodb一切都是按照默认设置,一切都好,但某日被查出安全漏洞,说mongodb要设置用户和密码什么的解决方案:自然就是在mongodb里面设置密码,但是遇到了不少的坑,... 查看详情

用户登录测试总结(代码片段)

平时工作总结:1)空白用户名和密码均为空/用户名填写,密码为空/用户名为空,密码填写2)错误校验输入错误的用户名和密码/用户名错误密码正确/用户名正确密码错误3)大小写区分(如:用户名和密码都为小写时)用户名和... 查看详情

mongodb创建用户角色(代码片段)

一、Mongodb数据库用户角色?MongoDB采用基于角色的访问控制(RBAC)来确定用户的访问。授予用户一个或多个角色,确定用户对MongoDB资源的访问权限和用户可以执行哪些操作。用户应该只有最小权限集才能确保最小权限的系统。MongoD... 查看详情

mongodb设置用户密码权限(代码片段)

1设置管理员账户useadmindb.createUser(user:"useradmin",pwd:"adminpassword",roles:[role:"userAdminAnyDatabase",db:"admin"])mongodb中的用户是基于身份role的,该管理员账户的role是userAdminAnyDatabase。‘userAdmin’代表用户 查看详情

如何使用用户名和密码登录?(代码片段)

...动应用程序,并且在后端使用firebase,我想知道我如何在用户名和密码之间建立连接,从而可以将用户与其用户名和密码相关联以电子邮件地址和密码开头,在询问诸如姓名,名字和用户名之类的信息时,我从用户那里获得的信... 查看详情

linux系统之高级用户组和权限管理(代码片段)

Linux系统之高级用户组和权限管理一、用户的密码策略设置1.用户的密码文件2.用户的密码期限配置①查看用户密码期限②修改密码期限③强制用户下一次修改密码④用户到期时间设置3.查看当前用户存在二、监控系统用户登录1.... 查看详情

编写一个系统(登录注册验证用户名密码和验证码覆盖存储用户)(代码片段)

...方法呈现开始菜单登陆注册退出编写账号类(存储正确的用户名和密码)用户名密码要求:选择登陆后输入用户名密码并进行验证(编写验证方法),验证成功后进入主菜单界面主菜单界面:幸运抽奖(需要完成功能)购物结算... 查看详情

vue(vue+node.js+mongodb)_登录注册(密码登录)(代码片段)

一、前言                                &nbs 查看详情

wtforms(代码片段)

WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证。安装:1pip3installwtforms用户登录注册示例1.用户登录当用户登录时候,需要对用户提交的用户名和密码进行多种格式校验。如:用户不能为空;用户长度... 查看详情

笔试题:设计一个登录程序,不同的用户名和对应密码存在一个字典里面...........,具体如下(代码片段)

实现如下:defLogin():whileTrue:username=input("请输入用户名:")ifusernamenotinpasswd.keys()orusername=="""":print("用户名不存在,请输入正确的用户名")else:print("用户名通过")breaki=1whilei<4:password=input("请继续输入用户密码:")ifpasswd[use 查看详情

会话技术cookie和session(代码片段)

1.什么是cookie?服务器在客户端保存的用户信息,不用登录名密码等....就是cookie例如现在,用户点击登录,把登录名和密码,复选框信息,传入到服务器,验证成功,则把用户名和密码保存到该客户端,在服务器端需要的时候可以从客户端读... 查看详情

密码-登录不工作的python(代码片段)

...forEverybody1st课程。为了练习我的技能,我决定使用密码和用户名登录。每当我创建用户名时,我都会收到用户设置错误,其中显示“凭证无效”。这是我的代码。importtimeimportdatetimeprint('storingData')print("Currentdateandtime:",datetime.dateti... 查看详情

linuxcentos7环境下安装mongodb(代码片段)

...证5.4演示对单个数据库创建用户和密码5.5可视化工具连接MongoDB系列文章LinuxCentOS7环境下安装MongoDBWindows环境下安装MongoDB1环境准备操作系统:L 查看详情

云原生之使用docker部署mongodb数据库(代码片段)

云原生之使用docker部署mongodb数据库一、检查系统版本二、检查docker状态三、检查docker版本四、下载mongodb镜像五、创建mongodb容器1.创建数据目录2.创建mongodb容器3.查看mongodb容器状态4.查看容器运行日志六、设置用户和密码1.进入容... 查看详情

phpphpsql用户名密码登录(代码片段)

查看详情

mongodb用户角色管理(代码片段)

...息5更新用户角色6修改用户密码7删除用户1用户管理简介MongoDB服务默认是没有账号密码的,客户端连接上即可进行各种操作。如果在配置文件中,指定了auth=true,即开启了认证,那么客户端 查看详情

javaweb实验二(代码片段)

...可以是歌曲、人物、名胜古迹等。要求至少有三个条目,用户登录后才能浏览这三个条目的内容。如果用户尚未登录,需要显示用户为“游客”,否则显示用户名。页面下端设置超链接,指向login.jsp。如果用户尚未登录,单击了... 查看详情