Definition定义
db.getUsers(<options>)Returns information for all the users in the database.返回数据库中所有用户的信息。db.getUsers()wraps the包装usersInfo: 1command.usersInfo: 1命令。Thedb.getUsers()method can take the following options:db.getUsers()方法可以接受以下选项:db.getUsers( {
showCredentials: <Boolean>,
showCustomData: <Boolean>,
filter: <document>
} )Field字段Type类型Description描述showCredentialsboolean布尔值Optional.可选。Set to设置为trueto display the user's password hash.true以显示用户的密码哈希值。By default, this field is默认情况下,此字段为false.false。showCustomDataboolean布尔值Optional.可选。Set to设置为falseto omit the user'scustomDatafrom the output.false可从输出中省略用户的customData。By default, this field is默认情况下,此字段为true.true。New in version 5.2.在版本5.2中新增。filterdocument文档Optional.可选。A document that specifies一个文档,指定$matchstage conditions to return information for users that match the filter conditions.$match阶段条件,为符合筛选条件的用户返回信息。For more information, see有关更多信息,请参阅usersInfo.usersInfo。
Compatibility兼容性
This method is available in deployments hosted in the following environments:此方法在以下环境中托管的部署中可用:
Important
This command is not supported in MongoDB Atlas clusters. MongoDB Atlas集群不支持此命令。For information on Atlas support for all commands, see Unsupported Commands.有关Atlas支持所有命令的信息,请参阅不支持的命令。
- MongoDB Enterprise
: The subscription-based, self-managed version of MongoDB:MongoDB的基于订阅的自我管理版本 - MongoDB Community
: The source-available, free-to-use, and self-managed version of MongoDB:MongoDB的源代码可用、免费使用和自我管理版本
Required Access所需访问权限
To view another user's information, you must have the 要查看其他用户的信息,您必须对其他用户的数据库执行viewUser action on the other user's database.viewUser操作。
Users can view their own information.用户可以查看自己的信息。
Examples示例
View All Users for a Database that Match the Specified Filter查看与指定筛选器匹配的数据库的所有用户
The db.getUsers() method can accept a filter document to return information for users that match the filter condition.db.getUsers()方法可以接受filter文档,为符合筛选条件的用户返回信息。
To view all users for the current database who have 要查看当前数据库中具有SCRAM-SHA-256 credentials:SCRAM-SHA-256凭据的所有用户,请执行以下操作:
db.getUsers({ filter: { mechanisms: "SCRAM-SHA-256" } })
When viewing all users, you can specify the 查看所有用户时,可以指定showCredentials option but not the showPrivileges or the showAuthenticationRestrictions options.showCredentials选项,但不能指定showPrivileges或showAuthenticationRestrictions选项。
Omit Custom Data from Output从输出中省略自定义数据
New in version 5.2.在版本5.2中新增。 To omit users' custom data from the 要从db.getUsers() output, set the showCustomData option to false.db.getUsers()输出中省略用户的自定义数据,请将showCustomData选项设置为false。
Use the 使用createUser command to create a user named accountAdmin01 on the products database:createUser命令在产品数据库上创建名为accountAdmin01的用户:
db.getSiblingDB("products").runCommand( {
createUser: "accountAdmin01",
pwd: passwordPrompt(),
customData: { employeeId: 12345 },
roles: [ { role: 'readWrite', db: 'products' } ]
} )
The user contains a 用户包含customData field of { employeeId: 12345 }.{ employeeId: 12345 }的customData字段。
To retrieve the user but omit the custom data from the output, run 要检索用户但从输出中省略自定义数据,请运行db.getUsers() with showCustomData set to false:db.getUsers()并将showCustomData设置为false:
db.getSiblingDB("products").getUsers( { showCustomData: false } )
Example output:示例输出:
{
users: [
{
_id: 'products.accountAdmin01',
userId: UUID("0955afc1-303c-4683-a029-8e17dd5501f4"),
user: 'accountAdmin01',
db: 'products',
roles: [ { role: 'readWrite', db: 'products' } ],
mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ]
}
],
ok: 1
}