MongoDB安全和认证

1.每个MongoDB实例中的数据库都可以有许多用户。如果开启了安全性检查,则只有数据库认证用户才能执行读或者写操作。

在认证的上下文中,MongoDB会将普通的数据作为admin数据库处理。admin数据库中的用户被视为超级用户(即管理员)。

在认证之后,管理员可以读写所有数据库,执行特定的管理命令,如listDatabases和shutdown。

在开启安全检查之前,一定要至少有一个管理员账号。

2.在admin数据库中创建管理员账号:
use admin;
db.addUser(“root”,”root”);

在test数据库中创建普通账号:
use test;
db.addUser(“zhangsan”,”123”);
db.addUser(“lisi”,”123”,true);

注意:用户zhangsan,密码为123,对test数据库拥有读写权限 用户lisi,密码为123,对test数据库拥有只读权限

重新启动数据库服务,并开启安全检查: mongod --dbpath d:\mongo_data --auth

时间: 2024-10-29 19:07:36

MongoDB安全和认证的相关文章

mongodb之用户/认证/角色/权限管理

前言 用户权限管理很重要,只给需要的权限,防止应用系统漏洞导致脱库 认证和授权 Authentication 认证识别,解决我是谁 Authorization 操作授权,我能做什么 认证机制 MONGODB-CR 官方自定义实现认证机制,通过用户名和密码,通过challenge-response方式,来识别和验证授权.SCRAM-SHA-1认证机制有更好的安全性,新版本默认使用SCRAM-SHA-1.不建议使用MONGODB-CR模式. SCRAM-SHA-1 3.0版本新加功能,Mongodb

mongodb添加用户认证

连接上mongodb并新建用户 use mall db.createUser(    {      user: "haha",      pwd: "123456",      roles:        [          { role: "readWrite", db: "mall" },                  ]    } 启动的时候添加--auth参数 可以用-u -p参数登陆 -> mongo [

【MongoDB】开启认证权限

1. mongodb.conf : 添加 auth=true 2. use admin (3.0+ 使用 createUser ;<3.0版本  http://www.cnblogs.com/guizi/archive/2012/11/20/2779500.html) db.createUser({  user: "root",  pwd: "123456",  roles: [ { role: "userAdminAnyDatabase"

python连接MongoDB(无密码无认证)

无密码无认证下连接 from pymongo import MongoClient host = '127.0.0.1' # 你的ip地址 client = MongoClient(host, 27017) # 建立客户端对象 db = client.mydb # 连接mydb数据库,没有则自动创建 myset = db.testset # 使用test_set集合,没有则自动创建 myset.insert({"name":"zhangsan","age&

如何在linux中部署mongodb并设置连接认证

在windows上给mongodb设置连接认证权限:mongodb默认是不认证的,默认没有账号,现在就讲讲怎么设置账户和密码 1.首先进入C:\mongodb\bin下面双击运行mongo.exe启动数据库. 2.接下来在mongo.exe中先创建用户管理员代码如下: 2.1先进admin数据库 命令:use admin 2.2在admin数据库下进行超级用户的登录验证 命令:db.auth("ultra","123456")//返回 1 表示登录成功 2.3在超级

Linux系统中备份和恢复MongoDB数据的教程

版本:mongodb3.2.6 备份格式: /data/mongodb/bin/mongodump -h IP --port 端口号 -u 用户 -p 密码-d 数据库名-o 存储路径 恢复格式: /mnt/mongodb/bin/mongorestore -h IP --port 端口号 -u 用户名-p密码  -d 数据库名 备份的文件夹名/* 注意,如果mongodb开启了认证登录,那么需要加参数--authenticationDatabase=admin, 因为笔者使用的mongodb开

mongoDB global,startUplog

1,show logs (Ruiy看到一些人干些事就跟shit一样,就来气!!!) show global(查看登陆MongoDB记录),startupWarnings 2,帮助命令help,db.help() 3,创建测试数据库,集合collection,测试插入数据,查询数据 4,向集合中插入数据(数据格式是python dict格式),并查询所有数据 5,MongoDB数据库账号 扯淡大白话 “MongoDB数据库默认没有用户名和密码,只要连接上服务,就能登录,进行所有操作”,你不配置co

【MongoDB】01、MongoDB基础

一.MongoDB概述 1.MogoDB简介 什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成.MongoDB 文档类似于 JSON 对象.字段值可以包含其他文档,数组及文档数组. 一个文档相当于mysql数据库中的一行数据 200

mongodb复杂命令行

mongodb{ 一.启动{ # 不启动认证 ./mongod --port 27017 --fork --logpath=/opt/mongodb/mongodb.log --logappend --dbpath=/opt/mongodb/data/ # 启动认证 ./mongod --port 27017 --fork --logpath=/opt/mongodb/mongodb.log --logappend --dbpath=/opt/mongodb/data/ --auth # 配置文