SCRAM
盐值挑战响应认证机制(SCRAM)是MongoDB的默认认证机制。
当用户认证时,MongoDB使用SCRAM验证提供的用户凭据与用户的name
、password
和认证数据库
。
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 而不是