初次接触MongoDB用户设置及认证,与以前不一样,有点搞不清楚状况,现在有点思绪了。
先说明几点:
1、MongoDB安装后默认不启动认证,不需要用户名和密码就可以随意访问。
2、MongoDB用户权限分配的操作,是针对某个数据库来说的。
3、每个数据库都有一个system.users集合,记录权限相关的信息,也就是谁有权限访问此数据库。
4、MongoDB安装后默认有一个admin数据库,此时admin中的system.users集合中没有一个用户,
这样不管mongodb启动时有没有启用认证(添加--auth),都可以无需认证进行随意操作,直到admin
的system.users集合中添加了一个用户并且启动了认证,操作才会受限。
5、admin的system.users集合中的用户具有超级权限,也就是说在admin中创建的用户可以对其他库操作.
6、必须在启动认证前,在admin的system.users集合先添加一个超级用户,否则就无法操作库了。
7、super admin必须从admin那么登录,然后再use其它库才可以,否则直接在其它库auth没用。
8、如果想单独访问一个库,用独立的用户名,就需要在该库的system.users集合中创建相应的user,然
后进行认证才可以。(先登入admin,在use该库,然后创建user,接着auth一下,这需要有super权限。)
9、启动认证后,只有super admin 才有权限进行show dbs;
启动认证
1、在Cmd中输入regedit,然后搜索mongodb
2、找到ImgPath,修改其值,添加 -auth,如下
D:\mongo\bin\mongod.exe --logpath D:\mongo\log\mongodb.log --logappend --dbpath D:\mongo\db
--directoryperdb -auth --service
操作用户
添加用户
db.addUser('root','root') 默认有读写权限
修改用户
db.addUser('root','root2')
删除用户
db.system.users.remove({user:'root'})
查询用户
db.system.users.find()
用户认证
db.auth('root','root')
用户登入
mongo admin(库) -u root -p root
相关推荐
5. **认证和安全性**:支持MongoDB的各种安全特性,包括SSL/TLS加密连接、身份验证(如SCRAM-SHA-1或MONGODB-CR)、角色权限管理和访问控制。 6. **CRUD操作**:提供对MongoDB基本的Create(创建)、Read(读取)、...
2. 分配权限给MongoDB用户,例如`mongod`,以允许其访问数据目录。 3. 编辑`/etc/profile.d/mongodb.sh`或`/etc/bashrc`文件,添加以下行来设置MongoDB的PATH环境变量: ``` export PATH=$PATH:/path/to/mongodb-...
- 用户认证:MongoDB 3.6版本引入了认证机制,可以通过设置用户和角色来控制访问权限。 - SSL/TLS支持:加密网络通信,确保数据传输的安全性。 - 权限管理:通过角色定义,可以限制用户对数据库的操作权限。 5. ...
7. **安全审计**:用户可以查看权限和角色,确保数据库的安全性。此外,还可以检查数据库的连接和认证设置。 压缩包内的文件如下: - **v8_context_snapshot.bin、snapshot_blob.bin、natives_blob.bin**:这些都...
- 首先,在没有身份验证的情况下启动MongoDB(这一步只用于设置权限): ``` sudo ./mongod --dbpath /data/db --noauth ``` - 在新的终端窗口中,连接到MongoDB: ``` sudo ./mongo ``` - 创建一个管理员...
接下来,创建一个MongoDB的数据存储目录,例如 `/data/db`,并确保其具有合适的权限: ```bash mkdir -p /data/db chown -R mongod:mongod /data/db ``` 然后,配置MongoDB的启动脚本。可以创建一个名为 `mongod` ...
8. **安全性和权限**:MongoDB 4.2及更高版本默认启用访问控制,因此在启动之前需要设置管理员用户和密码,以及任何其他必要的权限策略。 9. **MongoDB Shell**:MongoDB提供了一个交互式的JavaScript shell,用于...
5. 安全配置:启用身份验证,创建用户并分配权限,确保数据安全。 五、MongoDB的监控与维护 1. 日志监控:MongoDB的日志文件默认位于`/var/log/mongodb/mongod.log`,可以通过`tail -f`命令实时查看。 2. 健康检查...
7. **权限控制**:MongoDB支持角色基础的访问控制(RBAC),可以通过创建用户角色来限制用户的操作权限,保障数据库的安全。 请注意,MongoDB 3.4已经不再维护,对于生产环境,建议使用更稳定和安全的最新长期支持...
8. **安全性和权限**:MongoDB提供用户认证和角色管理,确保只有授权用户才能访问数据库。在4.0.3版本中,安全性得到了增强,建议启用认证并设置合适的权限。 9. **备份与恢复**:MongoDB支持多种备份和恢复策略,...
记住,为了保持MongoDB的安全运行,你应该考虑配置防火墙规则,限制只允许必要的IP地址访问,以及启用身份验证和设置用户权限。此外,监控和日志记录也是生产环境下的重要实践。 以上就是关于MongoDB 4.2.1 Linux...
此外,角色基础的权限控制允许管理员精细管理用户权限,确保数据安全。 除此之外,4.2版本引入了Change Streams功能,这是一个实时数据变更的API。开发者可以订阅集合、数据库或整个MongoDB实例的变更事件,实时...
3. **FLE 2 (Field Level Encryption)**: 提供了增强的数据加密功能,允许用户在不牺牲查询性能的情况下保护敏感数据。 4. **Serverless计算**: MongoDB引入了MongoDB Atlas Serverless,允许按需扩展资源,节省成本...
- 数据库的安全管理包括用户认证、角色权限控制和网络访问限制,确保数据安全。 - 为了生产环境的最佳实践,建议开启认证,设置防火墙规则,并定期备份数据。 6. 性能调优和监控: - MongoDB有许多性能监控工具...
安装MongoDB时,首先需要创建一个数据目录,比如`/data/db`,并确保该目录的权限允许MongoDB服务读写。接着,你可以通过启动`mongod`服务来运行MongoDB: ```bash sudo mkdir -p /data/db sudo chown -R $(whoami) ...
4. **配置与安全**:默认情况下,MongoDB不会启用权限验证,这在生产环境中是不安全的。在3.2.1版本中,建议配置一个admin用户并启用身份验证。在`/etc/mongod.conf`(或你的系统配置文件)中添加`security:` 部分,...
8. **安全增强**:5.0.1版本可能会强化认证和授权机制,比如支持更多的身份验证协议,以及对用户权限的更细粒度控制。 9. **日志和监控**:为了更好地进行故障排查和系统健康检查,此版本可能会提供更详细的日志...
6. 用户和角色管理:创建、编辑和管理数据库用户及权限,确保数据安全。 7. 集群管理:支持连接到MongoDB集群,显示节点状态,便于监控和故障排查。 8. 分片可视化:对于分片集群,Compass可以显示分片分布和数据...
- 设置权限:MongoDB运行时需要对数据目录有读写权限,执行`chown -R mongod:mongod /data/db`(假设mongod是MongoDB服务的用户)。 - 配置文件:创建`/etc/mongod.conf`配置文件,设置端口、数据路径等参数。例如...
通常,创建一个名为`/data/db`的目录并赋予适当的权限是必要的: ```bash sudo mkdir -p /data/db sudo chown -R your_user:your_group /data/db ``` 请将`your_user`和`your_group`替换为实际的用户名和组名。 ...