Mongodb常用的身份验证方式

(编辑:jimmy 日期: 2024/12/24 浏览:2)

1. 介绍

不管数据库是在多安全的环境或者本地环境,给数据库建立一个安全的环境是很有必要的。

Mongodb提供了一系列的 安全功能 ,这里介绍一种很常用的身份验证方式。

2. 开启验证

默认情况下,只要在启动数据库的时候没有加上 --auth 选项,就是没有身份验证功能的,所有客户端都可以进行所有权限的操作。

如果加上过后,我们就可以通过安全的身份验证连接数据库。如果要在数据库中进行身份验证,可以通过 db.auth(username, password) ,如果验证成功则返回1,反之。

3. 建立用户

建立用户我们可以通过 db.createUser()  方法来建立用户,比如下面这样:

db.createUser({user: 'username', pwd: 'password', roles: [
  {role: 'read', db: 'test'}
]});

db.createUser 方法的接受一个对象,里面的user代表用户名,pwd代表密码,而roles是一个数组可以接受多个对象,每个对象可以对应作用于的数据库,其中的role字段代表对作用的数据库的权限,官方规定了一些列的内置角色,可以通过 文档查询 。

4. 删除用户

删除用户需要具有权限的用户进行操作,通过 db.dropUser() 方法进行,接受一个字符串,这个字符串就是用户名:

db.dropUser('user1');

5. 获取用户

可以通过 db.getUser() 方法来获取用户信息,同样它接受一个字符串,字符串为用户名:

db.getUser('user1');

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?