面试题答案
一键面试步骤如下:
- 进入MongoDB shell:连接到副本集中的主节点。
- 创建管理员用户:在
admin
数据库下创建管理员用户,示例代码如下:
use admin
db.createUser({
user: "adminUser",
pwd: "adminPassword",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
这里user
指定用户名,pwd
指定密码,roles
中userAdminAnyDatabase
角色表示该用户可以管理任何数据库的用户,db
指定该角色作用于admin
数据库。
3. 开启认证:修改MongoDB配置文件(通常是mongod.conf
),添加或修改以下配置参数:
security:
authorization: enabled
authorization: enabled
表示开启用户认证机制。
4. 重启MongoDB服务:使配置生效。
5. 连接并验证:使用认证信息连接MongoDB,示例命令如下:
mongo -u "adminUser" -p "adminPassword" --authenticationDatabase "admin"
-u
指定用户名,-p
指定密码,--authenticationDatabase
指定认证数据库为admin
。
相关配置参数作用:
user
:指定创建用户的名称。pwd
:指定用户的密码。roles
:定义用户所拥有的角色,角色决定了用户的权限范围。不同角色有不同的权限,例如read
角色允许用户读取数据,readWrite
角色允许读写数据等。authorization
:在配置文件中的这个参数,决定是否开启用户认证机制,设为enabled
时开启认证。