MongoDB用户创建

时间:2024-11-22 21:06:56

MongoDB采用基于角色的访问控制(RBAC)来确定用户的访问。 授予用户一个或多个角色,确定用户对MongoDB资源的访问权限和用户可以执行哪些操作。 用户应该只有最小权限集才能确保最小权限的系统。

MongoDB系统的每个应用程序和用户都应该映射到不同的用户。 这种访问隔离便于访问撤销和持续的用户维护。

创建管理员用户

要在MongoDB部署中创建用户,请连接到部署,然后使用db.createUser()方法或createUser命令添加用户。

> use admin
> db.createUser(
{
user:"root",
pwd:"123456",
roles:[{role:"root",db:"admin"}]
}
)

MongoDB用户创建

添加数据库用户

创建指定数据库的用户,该用户只能访问该数据库。也可以为此数据库上的用户指定访问级别。 例如,创建一个在data数据库上具有读写访问权限的用户帐户。

> use data
> db.createUser(
{
user: "user01",
pwd: "123456",
roles: ["readWrite"]
}
)

MongoDB用户创建

验证身份验证使用以下命令。 返回结果为1,表示认证成功。

MongoDB用户创建

列出数据库的所有用户

MongoDB用户创建

删除数据库用户

MongoDB用户创建

创建带角色的用户

test数据库中创建用户:mynewuser,并向用户提供readWrite和dbAdmin角色。

use test
db.createUser(
{
user: "mynewuser",
pwd: "myuser123",
roles: [ "readWrite", "dbAdmin" ]
}
);

创建带角色的管理用户

管理数据库中创建一个名为 myadmin1 的用户,并给予用户对config数据库的 readWrite 访问权限,这样可以让用户更改分片分区的某些设置,例如平衡器设置。

use admin
db.createUser(
{
user: "myadmin1",
pwd: "myadmin123",
roles:
[
{ role: "readWrite", db: "config" },
"clusterAdmin"
]
}
);//原文出自【易百教程】,商业转载请联系作者获得授权,非商业请保留原文链接:https://www.yiibai.com/mongodb/create-users.html#article-start use admin
db.createUser(
{
user: "myadmin1",
pwd: "myadmin123",
roles:
[
{ role: "readWrite", db: "config" },
"clusterAdmin"
]
}
);

权限

权限由指定的数据库资源(resource)以及允许在指定资源上进行的操作(action)组成。

  1. 资源(resource)包括:数据库、集合、部分集合和集群;
  2. 操作(action)包括:对资源进行的增、删、改、查(CRUD)操作。

    常用的内置角色

MongoDB用户创建

参考:

用户创建

角色权限