SCRAM
Salted 质询响应身份验证机制 (SCRAM) 是 MongoDB 的默认身份验证机制。
当用户对自身进行凭证验证时, MongoDB使用SCRAM根据用户的 name
、 password
和authentication database
来验证提供的用户档案。
SCRAM 基于 IETFRFC 5802 标准,该标准定义了实现质询响应机制以使用密码对用户进行身份验证的最佳实践。
功能
MongoDB 的 SCRAM 实施提供:
可调工作因子(迭代计数)
每个用户的随机盐
服务器和客户端之间的双向身份验证
SCRAM 机制
MongoDB 支持以下 SCRAM 机制:
SCRAM 机制 | 说明 |
---|---|
SCRAM-SHA-1 | 使用 SHA-1 哈希函数。 要修改 |
SCRAM-SHA-256 | 使用 SHA-256 哈希函数。 要修改 |
创建或更新 SCRAM 用户时,您可以指示:
要使用的 SCRAM 机制
对密码进行摘要处理的是服务器还是客户端
使用 SCRAM-SHA-256
时,MongoDB 需要服务器端密码哈希,这意味着服务器会对密码进行摘要处理。有关更多信息,请参阅 db.createUser()
和 db.updateUser()
。
驱动程序支持
支持 SCRAM
的最低驱动程序版本为:
更多信息
如果您使用 SCRAM-SHA-1:
md5 是有必要使用的,但并不用于加密目的,
如果您使用的是 FIPS 模式,则不使用 SCRAM-SHA-1,而是使用: