主题
认证机制(SCRAM、x.509)
MongoDB 支持多种认证机制,用于验证连接用户身份,保护数据安全。
SCRAM(Salted Challenge Response Authentication Mechanism)
SCRAM 是 MongoDB 默认的用户名密码认证机制,具有高安全性和抗重放攻击能力。
工作原理
- 客户端和服务器通过多轮加密挑战与响应完成认证。
- 密码不会明文传输,存储时进行盐值加密。
特点
- 支持 SCRAM-SHA-1 和 SCRAM-SHA-256 两种版本。
- 推荐使用 SCRAM-SHA-256 以增强安全性。
X.509 证书认证
基于 TLS/SSL 的客户端证书认证,适用于企业环境中更高安全需求。
配置要求
- 服务器启用 TLS/SSL。
- 客户端使用有效的 X.509 证书连接。
- 证书中包含的 DN(Distinguished Name)用于映射用户身份。
优点
- 支持无密码认证,基于证书链信任。
- 适合自动化和大规模安全管理。
启用认证示例
在 mongod.conf
配置文件启用认证:
yaml
security:
authorization: enabled
clusterAuthMode: x509
总结
选择合适的认证机制,结合加密通信,能有效保障 MongoDB 数据库的访问安全。