mongodb添加密码

1、创建超级用户

use admin
db.createUser(
{
user: “root”,
pwd: “Ra6VYqbWXvTWo7v2”,
roles: [ { role: “userAdminAnyDatabase”, db: “admin” }, “readWriteAnyDatabase” ]
}
)

2、停止mongodb进程,不能直接kill -9 pid 。可能导致再次启动失败

mongod --dbpath /home/app/mongod/data/db --logpath /home/app/mongod/log/mongod.log --shutdown

3、修改配置文件在里面添加 auth=true 后保存退出

#vi mongodb.conf
dbpath=/usr/local/mongodb/data/db #数据文件存放目录
logpath=/usr/local/mongodb/data/log/mongodb.log #日志文件存放目录
logappend=true #开启日志追加添加日志
port=24017 #端口,默认27017,可以自定义
bind_ip=0.0.0.0 #本地监听IP,0.0.0.0表示允许所有IP
fork=true #以守护程序的方式启用,即在后台运行
auth=true #权限验证

4、启动mongodb

mongod -f /home/app/mongod/mongodb4/mongodb.conf --auth

5、创建用户

use test1
db.createUser(
{
user: “test1”,
pwd: “2yjonqzC3nSzp8Uu”,
roles: [ { role: “dbOwner”, db: “test1” } ]
}
)

#登录方式
方式一:
use admin
db.auth(“root”,“Ra6VYqbWXvTWo7v2”)
use test1
db.auth(“test1”,“2yjonqzC3nSzp8Uu”)
#修改密码
use admin
db.changeUserPassword(‘root’,‘Ra6VYqbWXvTWo7v2’);

### MongoDB 身份验证配置 为了增强数据库的安全性,在生产环境中通常会启用身份验证机制来保护数据不被未授权访问。以下是关于如何为 MongoDB 配置密码以及设置身份验证的具体方法。 #### 启动 MongoDB 服务 确保 MongoDB 服务已正常运行。可以通过以下命令启动 MongoDB 实例并指定存储路径: ```bash mongod --dbpath /path/to/your/db ``` 此操作将初始化 MongoDB 数据库实例[^1]。 #### 创建管理员账户 连接到 MongoDB 的 shell 并创建具有管理权限的用户。执行如下命令以进入 MongoDB Shell: ```bash mongo ``` 在 MongoDB Shell 中,切换至 `admin` 数据库并通过 `createUser` 方法定义新用户及其角色分配。例如: ```javascript use admin; db.createUser({ user: "AdminUser", pwd: "password", roles: ["userAdminAnyDatabase"] }); ``` 上述代码片段中的 `"AdminUser"` 是用户名,而 `"password"` 则是对应的密码。这里赋予该用户 `userAdminAnyDatabase` 权限,使其能够管理和维护其他用户的认证信息[^3]。 #### 修改 mongod.conf 文件以启用身份验证 编辑 MongoDB配置文件 `/etc/mongod.conf` 或者相应的本地配置文件,找到 security 参数部分,并添加或修改成下面的内容: ```yaml security: authorization: enabled ``` 保存更改后重启 MongoDB 服务使这些改动生效。 #### 使用带身份验证的方式登录 当启用了身份验证之后,再次尝试通过客户端工具或者命令行接入时需提供有效的凭证信息。可以利用 `-u`, `-p` 和 `--authenticationDatabase` 参数完成这一过程: ```bash mongo -u "AdminUser" -p "password" --authenticationDatabase "admin" ``` 如果不想明文暴露密码,则省略 `-p password` 部分,系统会在交互模式下请求输入密码[^2]。 ### 注意事项 - 设置强密码非常重要,建议采用复杂度较高的字符串作为密码。 - 对于不同的业务需求可定制化授予不同类型的权限给各个特定用途的子账号。 - 定期审查和更新安全策略有助于保持系统的健壮性和安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值