mongoDB创建账号

目录

MongoDB创建管理员账户

MongoDB用户角色

MongoDB默认用户和密码

示例


MongoDB创建管理员账户

要创建管理员账户,您需要使用具有超级用户权限的用户登录 MongoDB,并在 admin 数据库中创建管理员账户。以下是创建管理员账户的步骤:

 1、打开终端或命令提示符

 2、以管理员权限运行 命令,连接到 MongoDB 实例:mongo

mongo

 3、切换到 admin 数据库:

use admin

 4、创建管理员账户并授予角色:

创建管理员账户并授予 root 角色,这是 MongoDB 中最高权限的角色,可以访问所有数据库和执行所有操作 

db.createUser({
   user: "创建账号",
   pwd: "密码",
   roles: [ { role: "root", db: "admin" } ]
})

完成后,可以使用该账户访问 MongoDB 实例

MongoDB用户角色

在 MongoDB 中,用户角色用于控制用户对数据库和集合的访问权限。MongoDB 中的角色可以分为以下几类:

  1. 内置角色:MongoDB 包含一组内置角色,这些角色是预定义的角色,可以用于访问和管理数据库。其中一些角色包括:read、readWrite、dbAdmin、userAdmin 等。

  2. 自定义角色:除了内置角色之外,还可以创建自定义角色,以控制用户对数据库和集合的访问权限。可以使用 db.createRole() 方法创建自定义角色。

  3. 特殊角色:MongoDB 包含一些特殊的角色,例如 root 角色,该角色具有 MongoDB 中最高级别的权限,可以访问所有数据库和执行所有操作。

以下是一些常见的内置角色及其说明:

read:允许用户读取指定数据库中的数据。

readWrite:允许用户读取和写入指定数据库中的数据。

dbAdmin:允许用户执行有关数据库的管理任务,如备份和还原数据。

userAdmin:允许用户管理指定数据库中的用户和角色。

dbOwner:允许用户执行关于指定数据库的所有操作,包括读取和写入数据,以及管理用户和角色。

clusterAdmin:允许用户执行有关整个集群的管理任务,如添加和删除节点。

backup:允许用户备份数据。

restore:允许用户还原数据。

root:允许用户访问所有数据库和执行所有操作。

可以使用 db.grantRolesToUser() 方法将角色授予用户,使用 db.revokeRolesFromUser() 方法将角色从用户中删除

MongoDB默认用户和密码

默认情况下,MongoDB 实例不包含任何管理员账户或用户账户,因此不需要用户名和密码即可访问 MongoDB 实例。但是,在 MongoDB 4.0 之后的版本中,MongoDB 引入了身份验证功能,为了提高安全性,建议在生产环境中启用身份验证功能并创建用户账户。

如果在生产环境中启用了身份验证功能并创建了用户账户,那么默认情况下,MongoDB 实例不包含任何管理员账户或用户账户。必须通过创建管理员账户和用户账户来配置 MongoDB 实例的安全性。

在创建管理员账户之后,可以使用以下命令来创建用户账户:  

切换到要创建账号的数据库 

use 数据库名

 创建

db.createUser({
   user: "创建账号",
   pwd: "密码",
   roles: [ { role: "readWrite", db: "数据库名" } ]
})

示例

# 切换库
use mydatabase
# 创建
db.createUser({
   user: "myuser",
   pwd: "mypassword",
   roles: [ { role: "readWrite", db: "mydatabase" } ]
})
# readWrite 读写权限

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 MongoDB创建角色,可以按照以下步骤进行操作: 1. 首先,连接到 MongoDB 数据库。你可以使用 MongoDB 的 shell 或者任何可用的客户端工具。 2. 使用管理员身份登录到目标数据库。可以使用以下命令登录到管理员账号: ```shell use admin db.auth("adminUsername", "adminPassword") ``` 请将 "adminUsername" 替换为实际的管理员用户名,"adminPassword" 替换为管理员密码。 3. 创建一个新的角色。你可以使用 `db.createRole()` 命令来创建角色。下面是一个创建名为 "exampleRole" 的角色的示例命令: ```shell db.createRole({ role: "exampleRole", privileges: [ { resource: { db: "exampleDB", collection: "" }, actions: ["find", "insert", "update", "remove"] } ], roles: [] }) ``` 这个示例命令创建了一个名为 "exampleRole" 的角色,并为它授予了对 "exampleDB" 数据库中所有集合的查找、插入、更新和删除操作的权限。 你可以根据实际需要定义更多的权限和角色继承关系。 4. 将角色分配给用户。你可以使用 `db.grantRolesToUser()` 命令将角色分配给用户。下面是一个示例命令: ```shell db.grantRolesToUser("exampleUser", ["exampleRole"]) ``` 这个示例命令将 "exampleRole" 角色分配给名为 "exampleUser" 的用户。 请将 "exampleUser" 替换为实际的用户名,"exampleRole" 替换为你想要分配给该用户的角色。 这样,你就成功地在 MongoDB创建了一个角色并将其分配给了一个用户。确保根据实际需求进行相应的配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值