You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB 4.4.15使用db.updateUser()时SCRAM-SHA-256不支持问题

解决MongoDB 4.4更新用户时SCRAM-SHA-256不支持的问题

问题根源

你的MongoDB实例启动时未将SCRAM-SHA-256加入允许的认证机制列表,默认仅启用SCRAM-SHA-1,导致更新用户时触发不支持的错误。

解决步骤

1. 修改MongoDB认证机制配置

需要在实例配置中添加SCRAM-SHA-256,可通过两种方式实现:

方式一:配置文件(推荐)

编辑mongod.conf(路径根据部署环境调整),在security节点下补充配置:

security:
  authorization: enabled
  authMechanisms: SCRAM-SHA-1,SCRAM-SHA-256

注:多个机制用逗号分隔,不要添加空格。

方式二:命令行启动参数

若通过命令行启动mongod,添加--authMechanisms参数:

mongod --auth --authMechanisms SCRAM-SHA-1,SCRAM-SHA-256 --replSet your_replset_name ... # 保留其他原有启动参数

2. 重启MongoDB实例

修改配置后必须重启所有副本集节点,确保配置生效。

3. 重新执行用户更新命令

重启完成后,再次运行原命令即可成功设置SCRAM-SHA-256认证:

use admin
db.updateUser(
    "the_username",
    {
        pwd: passwordPrompt(),
        mechanisms: [ "SCRAM-SHA-256" ],
        passwordDigestor: "server"
    }
)

内容的提问来源于stack exchange,提问作者Dimadozen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 22:15:35