ubuntu

MongoDB在Ubuntu上的认证方式

小樊
53
2025-10-14 09:36:39
栏目: 云计算

MongoDB在Ubuntu上的认证方式及配置流程

一、基础认证配置(SCRAM-SHA-256/SCRAM-SHA-1)

SCRAM(Salted Challenge-Response Authentication Mechanism)是MongoDB默认的认证机制,Ubuntu环境下主要支持SCRAM-SHA-256(推荐)和SCRAM-SHA-1。配置步骤如下:

1. 启用认证

编辑MongoDB主配置文件(/etc/mongod.conf),在security section添加或修改以下内容,启用认证功能:

security:
  authorization: enabled

保存后重启MongoDB服务使配置生效:

sudo systemctl restart mongod

2. 创建管理员用户

使用mongo shell连接到MongoDB(默认无认证),切换至admin数据库(系统级权限数据库),创建具备root角色(最高权限)的管理员用户:

use admin
db.createUser({
  user: "admin",
  pwd: "your_secure_password", // 替换为强密码
  roles: ["root"]
})
exit

3. 使用管理员认证连接

后续连接MongoDB需通过管理员账户验证,示例如下:

# 命令行连接(本地)
mongo -u admin -p your_secure_password --authenticationDatabase admin

# 图形化工具(如MongoDB Compass)连接字符串示例
mongodb://admin:your_secure_password@localhost:27017/admin

4. 创建数据库特定用户

为特定数据库(如mydb)创建普通用户,分配所需权限(如readWrite读写权限、dbOwner数据库所有者权限):

use mydb
db.createUser({
  user: "myuser",
  pwd: "user_password",
  roles: ["readWrite", "dbOwner"]
})
exit

二、高级认证方式(可选)

除基础SCRAM认证外,Ubuntu环境还可配置以下高级认证机制,提升安全性:

1. x.509证书认证

通过SSL/TLS证书实现客户端与服务端的双向认证,适用于高安全需求场景。配置步骤包括:

2. LDAP认证

集成企业级LDAP(如OpenLDAP、Active Directory)实现集中用户管理,配置步骤包括:

三、认证相关注意事项

以上配置覆盖了Ubuntu环境下MongoDB的主要认证方式,可根据实际需求选择基础或高级方案,确保数据库访问安全。

0
看了该问题的人还看了