MongoDB添加认证
创建用户管理员
在admin数据库中,添加具有该userAdminAnyDatabase角色的用户 。根据需要为此用户添加其他角色。
注意:创建用户的数据库(在此示例中为 admin)是用户的身份验证数据库。虽然用户将对此数据库进行身份验证,但用户可以在其他数据库中拥有角色; 即用户的身份验证数据库不限制用户的权限。
以下内容使用角色和 角色myUserAdmin在admin数据库中创建用户;创建用户的数据库(在此示例中为 admin)是用户的身份验证数据库。
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
停止MongoDB
service mongod stop
修改配置文件
在/etc/mongod.conf中添加:
security:
authorization: enabled
以用户管理员身份进行连接和身份验证
验证方式:
- 通过传入用户凭据来连接身份验证
mongo命令使用:-u <username>-p <password>--authenticationDatabase <database>
2.首先进行无需身份验证的连接,然后发出db.auth()要进行身份验证;
切换到身份验证数据库(在本例中为admin),并使用 方法进行身份验证:db.auth(<username>,<pwd>)
use admin
db.auth("myUserAdmin", "abc123" )
授权方式:
#更新角色:db.updateUser( "userName" , [ { role: "<role>", db: "<database>" } ])
db.updateUser( "myuser" , [ { role: "dbOwner", db: "mydb" } ])
#授予角色:db.grantRolesToUser( "userName" , [ { role: "<role>", db: "<database>" } ]) db.grantRolesToUser( "myuser" , [ { role: "dbOwner", db: "mydb" } ]) #取消角色:db.grantRolesToUser( "userName" , [ { role: "<role>", db: "<database>" } ]) db.revokeRolesFromUser( "myuser" , [ { role: "readWrite", db: "mydb" } ])
参考:https://docs.mongodb.com/manual/tutorial/enable-authentication/
MongoDB添加认证的更多相关文章
- Mongodb安全认证
Mongodb安全认证在单实例和副本集两种情况下不太一样,单实例相对简单,只要在启动时加上 --auth参数即可,但副本集则需要keyfile. 一.单实例 1.启动服务(先不要加auth参数) 2. ...
- Mongodb安全认证及Java调用
Mongodb安全认证在单实例和副本集两种情况下不太一样,单实例相对简单,只要在启动时加上 --auth参数即可,但副本集则需要keyfile. 一.单实例 1.启动服务(先不要加auth参数) 2. ...
- mongodb的认证(authentication)与授权(authorization)
一小白瞎整mongodb,认证部分被折磨的惨不忍睹,看厮可怜,特查了一下文档,浅显地总结一下mongodb认证(authentication)与授权(authorization)的联系. 创建的所有用 ...
- 学习MongoDB 二:MongoDB添加、删除、修改
一.简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSQL数据库产品中最热门的一种.数据被分组存储在数据集中,被称为一个集合(Collenction)和对于存储在MongoDB ...
- Mongodb添加副本及修改优先级
Mongodb添加副本及修改优先级 1.添加副本集 #在primary节点上执行 >rs.add( { host: "192.168.1.11:27017", priorit ...
- mongodb添加登陆验证
mongodb添加登陆验证 转载地址 清空log,db目录 mongod --auth --logpath "D:\mongodb\log\log.log" --logappend ...
- MongoDB-2:MongoDB添加、删除、修改
一.简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSQL数据库产品中最热门的一种.数据被分组存储在数据集中,被称为一个集合(Collenction)和对于存储在MongoDB ...
- MongoDB 添加用户名和密码
MongoDB 添加用户名和密码 我用的是 mongodb3.6,如果没有的话先安装. sudo apt install mongodb 终端输入mongo,首先添加管理用户, show dbs // ...
- mongodb添加用户和认证
Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...
随机推荐
- 手写spring
体系结构 Spring 有可能成为所有企业应用程序的一站式服务点,然而,Spring 是模块化的,允许你挑选和选择适用于你的模块,不必要把剩余部分也引入.下面的部分对在 Spring 框架中所有可用的 ...
- 使用swagger遇到的问题
1.定义全局的请求参数时, defaultValue不能是中文,不然一直是请求中 ParameterBuilder userName = new ParameterBuilder(); Paramet ...
- Session、Cookie、Token 【浅谈三者之间的那点事】
Cookie 和 Session HTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录:Session 和 Cookie 的主要目的 ...
- 给你的MyBatis-Plus装上批量插入的翅膀
努力和选择,哪个更重要?关注微信公众号[天开易想]这是一位懂互联网研发和架构的户外.篮球老铁 前言 各位好,我是易哥(thinkYi). 大家有用过MyBatis-Plus(简称MP)的都知道它是一个 ...
- Actor:人生如戏全靠演技--“三维度”逻辑编程语言的设计(3)
在上一篇介绍了逻辑编程的作用,介绍了逻辑编程中的一些概念,包括逻辑程序的结构:事实.规则和问题:知识的表达方式:谓词演算.产生式规则,以及这些概念与三维度(角色+场景+时间)理论的契合关系,正式提出了 ...
- HTML中限制input 输入框输入内容
限制 input 输入框只能输入纯数字1.onkeyup = "value=value.replace(/[^\d]/g,'')" 使用 onkeyup 事件,有 bug ,那就是 ...
- 软件定义网络实验记录②--Mininet 实验——拓扑的命令脚本生成
一.实验目的 掌握 Mininet 的自定义拓扑生成方法:命令行创建.Python 脚本编写 二.实验任务 通过使用命令行创建.Python 脚本编写生成拓扑,熟悉 Mininet 的基本功能. 三. ...
- 免费开源工作流Smartflow-Sharp v2.0
@font-face { font-family: 宋体 } @font-face { font-family: "Cambria Math" } @font-face { fon ...
- iNeuOS工业互联平台,在“智慧”楼宇、园区等领域的应用
目 录 1. 概述... 1 2. 平台演示... 2 3. 硬件网关... 2 4. 平台接入硬件网关... 4 1. 概述 " ...
- This is Riv3r1and.
总是要弄个博客来搞的嘛.