mongodb数据库教程-MongoDB更改用户密码和自定义数据

跨零代码为大家提供高品质的解决方案,请大家多多来访,跨零不胜感激,在此谢过。

具有适当权限的用户可以更改自己的密码和自定义数据。 自定义数据存储可选的用户信息。

注意事项

在此过程要生成一个强大的密码,您可以使用openssl实用程序的rand命令。 例如,使用以下选项发出openssl rand,以创建48个伪随机字节的base64编码字符串:

openssl rand -base64 48 

先决条件

要修改自己的密码和自定义数据,您必须具有在用户数据库上分别授予changeOwnPasswordchangeOwnCustomData操作的权限。

第一步:使用相应的权限连接到MongoDB

使用“先决条件”部分指定的权限连接到 mongodmongos

以下过程使用在“启用认证”中创建的用户:myUserAdmin

$ mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin" 

第二步:使用适当的权限创建角色

在管理数据库中,使用changeOwnPasswordchangeOwnCustomData创建一个新角色。

use admin db.createRole(    { role: "changeOwnPasswordCustomDataRole",      privileges: [         {           resource: { db: "", collection: ""},           actions: [ "changeOwnPassword", "changeOwnCustomData" ]         }      ],      roles: []    } ) 

第三步:添加具有此角色的用户

test数据库中,使用创建的“changeOwnPasswordCustomDataRole”角色创建一个新用户。 例如,以下操作将创建具有内置角色readWrite和用户创建的“changeOwnPasswordCustomDataRole”的用户。

use test db.createUser(    {      user:"user123",      pwd:"12345678",      roles:[ "readWrite", { role:"changeOwnPasswordCustomDataRole", db:"admin" } ]    } ) 

要向现有用户授予新角色,请使用db.grantRolesToUser()

执行过程

第一步:使用相应的权限连接到MongoDB

使用“先决条件”部分指定的权限连接到 mongodmongos

以下过程使用在“启用认证”中创建的用户:myUserAdmin

$ mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin" 

要检查您是否具有先决条件部分中指定的权限以及查看用户信息,请使用带有--showPrivileges选项的usersInfo命令。

第二步:更改您的密码和自定义数据

使用db.updateUser()方法来更新密码和自定义数据。

例如,以下操作将用户的密码更改为:KNlZmiaNUp0B,并将自定义数据更改为{title:“Senior Manager”}

use test db.updateUser(    "user123",    {       pwd: "KNlZmiaNUp0B",       customData: { title: "Senior Manager" }    } ) 

  

从零到一,创造未来!跨零综合IT问题解决服务站,欢迎你的到来。Oracle数据库教程 mongodb数据库教程/a> 只为你绽放。

本文固定链接: http://kua0.com/2019/03/25/mongodb数据库教程-mongodb更改用户密码和自定义数据/

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注