mongodb 添加用户名密码验证

本文介绍了如何在 MongoDB 中创建用户并进行认证的过程。详细展示了使用 shell 命令创建带有特定权限的角色,并通过示例说明了如何配置数据库以启用授权。此外,还提供了连接到数据库时所需的正确认证数据库和认证机制。

mongo localhost -u username -p pwd --authenticationDatabase admin --authenticationMechanism SCRAM-SHA-1

 
db.createUser(
  {
    user: "username",
    pwd: "passwrd",
    roles: [ { role: "readWrite", db: "shujuku" },
  }
)
shell创建用户并登录




think that auth = true is an invalid configuration and your mongod is not starting because of it. To enable authorization, try using the following instead:

security:
  authorization: enabled

Then, to connect to the database, make sure that your client is using the correct authentication database and authentication mechanism. This can be done using the commmand line by the following command:

mongo localhost -u admin -p myAdminPass --authenticationDatabase admin --authenticationMechanism SCRAM-SHA-1
### 设置 MongoDB 8.04 认证用户名和密码 对于 MongoDB 版本 8.04 中设置访问控制并启用身份验证的过程,可以按照如下方法操作: #### 启用认证功能 为了使数据库能够识别特定用户的权限,在启动 mongod 实例之前或通过修改配置文件来开启授权机制。这通常涉及到编辑 `/etc/mongod.conf` 文件中的 `security.authorization` 参数设为 `"enabled"`[^1]。 ```yaml # /etc/mongod.conf security: authorization: "enabled" ``` 重启服务让更改生效之后,就可以开始创建管理员账户了。 #### 创建管理员账号 连接到无认证模式下的本地实例(如果已经启用了认证,则需先禁用),执行以下命令以建立具有 root 权限的角色用户。此步骤应在安全环境下完成,因为此时还没有其他形式的身份验证保护措施。 ```javascript use admin; db.createUser({ user: "rootUser", pwd: "yourStrongPasswordHere", // 替换成强密码 roles: [{ role: "root", db: "admin" }] }); ``` 上述代码片段定义了一个名为 `rootUser` 的超级管理用户,并赋予其最高级别的权限以便后续管理和维护工作[^2]。 #### 配置客户端连接字符串 当设置了初始的管理员级用户后,任何尝试与服务器通信的应用程序都需要提供有效的凭证信息。一个典型的 URI 格式的连接串看起来像这样: ```plaintext mongodb://<username>:<password>@localhost:<port>/admin?authSource=admin&retryWrites=true&w=majority ``` 这里的 `<username>` 和 `<password>` 应替换为实际创建时所指定的内容;而 `authSource=admin` 表明我们将使用哪个数据库作为认证源来进行身份验证过程[^3]。 #### 添加更多普通用户 除了根级别之外还可以针对不同业务需求设立专门的数据访问者角色。比如要在一个叫作 myDatabase 的集合上授予读写权限给新注册成员的话,可参照下面的例子来做相应调整: ```javascript use myDatabase; db.createUser({ user: "normalUser", pwd: "anotherSecurePassphrase!", roles: [ {role:"readWrite", db:"myDatabase"} ] }) ``` 以上就是关于如何在 MongoDB 8.04 上设定基本的安全策略以及分配适当的操作许可的一些指导说明[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值