MongoDB用户及安全
MongoDB添加用户
#### 1.用户管理接口 要添加用户,可使用MongoDB提供的db.createUser()方法。 添加用户时,可以为用户分配角色以授予权限。 >注意:在数据库中创建的第一个用户应该是具有管理其他用户的权限的用户管理员。 ####2.创建管理员用户 - 以使用以下命令在MongoDB服务器中创建具有管理员权限的用户 ```shell $ mongo > use admin > db.createUser({ user:"maxsu", pwd:"pwd123", roles:[{role:"root",db:"admin"}] }) > exit ``` - 通过命令行使用上述用户凭据登录 ```shell >mongo -u maxsu -p --authenticationDatabase admin MongoDB shell version v3.4.5 >Enter password: connecting to: mongodb://127.0.0.1:27017 ``` ####3. 添加数据库用户 - 您还可以创建指定数据库的用户,该用户只能访问该数据库。也可以为此数据库上的用户指定访问级别。 例如,创建一个在mydb数据库上具有读写访问权限的用户帐户。 ```shell > use mydb > db.createUser( { user: "user01", pwd: "pwd123", roles: ["readWrite"] } ) > exit ``` - 验证身份验证使用以下命令。 返回结果为1,表示认证成功。 ```shell > db.auth('user01','pwd123') 1 > ``` #### 4. 要列出数据库的所有用户,使用以下命令。 ```shell > db.getUsers() ``` #### 5. 删除数据库用户,请使用以下命令。 ```shell > use mydb > db.dropUser('user02') ``` ####6.创建带角色的用户 以下操作在test数据库中创建用户:mynewuser,并向用户提供readWrite和dbAdmin角色。 ```shell use test db.createUser( { user: "mynewuser", pwd: "myuser123", roles: [ "readWrite", "dbAdmin" ] } ); ``` ####7.创建没有角色的用户 以下操作在test数据库中创建一个名为mynewuser1的用户,但尚未分配角色: ```shell use test db.createUser( { user: "mynewuser1", pwd: "myuser1123", roles: [ ] } ); ``` ####8.创建具有角色的管理用户 以下操作在管理数据库中创建一个名为 myadmin1 的用户,并给予用户对config数据库的 readWrite 访问权限,这样可以让用户更改分片分区的某些设置,例如平衡器设置。 ```shell use admin db.createUser( { user: "myadmin1", pwd: "myadmin123", roles: [ { role: "readWrite", db: "config" }, "clusterAdmin" ] } ); ```
顶部
收展
底部
[TOC]
目录
MongoDB安全措施
MongoDB验证
MongoDB添加用户
MongoDB启用身份验证
MongoDB管理用户和角色
相关推荐
MongoDB教程
MongoDB进阶
PHP操作MongoDB
MongoDB优化