首页/数据/NoSQL 速查/NoSQL 安全基线:认证、传输与权限
选型与架构50 条

NoSQL 安全基线:认证、传输与权限

安全基线从三件事开始:服务只监听内网地址、开启认证与 TLS、给应用分配最小权限账号。再补审计日志、备份加密与补丁管理。自建数据库暴露公网又无认证是事故的常见来源。

NoSQL 速查数据更新于 2026-10-13

先关掉不必要的暴露面

NoSQL 安全基线从三件事开始:服务只监听内网地址、开启认证、给应用分配最小权限账号。再补传输加密、审计日志、备份加密与补丁管理。自建数据库监听所有地址又没有认证,是被扫描后植入挖矿或勒索的最常见起点。

四类基线项

网络绑定内网地址,防火墙只放行应用网段;不要让实例监听全部网卡
账号按应用与角色拆分账号,只授予需要的库、集合与操作;默认高权账号不直连业务
传输开启 TLS,证书过期纳入监控;密码与 Token 走密钥管理而不是明文配置
审计开启审计日志并配置保留周期;权限变更、账号创建这类操作必须留痕

配置片段

配置片段
# mongod.conf 关键项
security:
  authorization: enabled
net:
  bindIp: 127.0.0.1,10.0.0.12
  tls:
    mode: requireTLS

# Elasticsearch:启用安全模块
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

# Redis ACL:为报表应用创建只读账号
ACL SETUSER report on >StrongPass ~report:* +get +mget
ACL LIST

为什么先把监听地址改掉

认证配置需要逐个系统调通,见效最慢;而监听地址与防火墙规则改一条就能立刻切断外部扫描面。先做网络收敛,再逐步开启认证与 TLS,既能马上降低风险,也不会因为一次改动太多导致业务中断。

落地检查顺序

  • 确认监听地址与防火墙规则,先切断公网可达
  • 为每个应用创建独立账号并验证权限边界
  • 开启认证,把管理员口令换成密钥管理中的强凭据
  • 开启 TLS 并确认客户端连接串已带证书参数
  • 打开审计日志,确认权限变更与慢操作能追溯到账号
备份文件同样包含敏感数据:备份介质要加密、访问权限要收紧,恢复演练放在隔离环境里做,避免演练本身造成泄露。
开启认证前先确认客户端连接串已经带上凭据与证书参数再重启服务,否则表现为服务一重启业务侧就集中报连接失败。

易错点

  • 沿用默认端口并暴露公网且没有认证,实例会在很短的时间内被扫描并植入挖矿或勒索程序
  • 一个超级账号给所有应用共用,任何一处泄露都等于全库权限,审计也无法定位来源
  • 只做认证不开 TLS,口令与数据在链路上仍可被抓取,内网横向移动一样能拿到凭据
  • 权限只按库授权不按操作收敛,只读应用拿到写权限后误删数据无法回滚
  • 审计日志开了但没设保留周期,出事后需要追溯时日志已经被清理

数据来源与参考

  • MongoDB Manual: Security checklist
  • Elasticsearch Guide: Secure the cluster
  • Redis Docs: ACL
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌