mongodb 查询当前用户
时间: 2023-08-14 21:31:05 浏览: 43
在 MongoDB 中,可以使用 `db.runCommand({connectionStatus: 1})` 命令来获取当前用户的信息。
具体地,您可以在 MongoDB Shell 中输入以下命令来查询当前用户的信息:
```
db.runCommand({connectionStatus: 1})
```
执行该命令后,MongoDB 会返回一个包含当前用户信息的 JSON 对象,其中包含了当前用户的用户名、权限等信息。
如果您是通过 MongoDB Atlas 管理 MongoDB 实例,您可以通过 Atlas 界面中的“命令行工具”或“Mongo Shell”来执行以上命令。
相关问题
mongodb 查询用户权限
要查询用户在MongoDB中的权限,可以使用`db.getUser()`方法。这个命令返回指定用户的详细权限信息。以下是查询用户权限的一般步骤:
1. 打开你的MongoDB shell或者使用一个MongoDB客户端连接到你的数据库。
2. 使用`use <database>`来选择你要查询的数据库。
3. 运行以下命令来查询指定用户的权限信息:
```
db.getUser("<username>")
```
请将`<username>`替换为你要查询权限的用户名。
这个命令将返回该用户的详细权限信息,包括数据库角色和集合级别的权限。
注意:为了执行`db.getUser()`命令,你需要在管理员权限下登录MongoDB,并且只能查询当前所选择的数据库中的用户信息。
MongoDB查看当前登录用户
### 回答1:
在MongoDB中,可以使用以下命令查看当前登录用户:
```
db.runCommand({connectionStatus : 1})
```
该命令将返回一个文档,其中包含当前连接的详细信息,包括当前登录用户的用户名。
可以在MongoDB shell中运行此命令,如下所示:
```
> db.runCommand({connectionStatus : 1})
```
输出可能如下所示:
```
{
"authInfo" : {
"authenticatedUsers" : [
{
"user" : "myuser",
"db" : "mydatabase"
}
],
"authenticatedUserRoles" : [
{
"role" : "readWrite",
"db" : "mydatabase"
}
]
},
"ok" : 1
}
```
在上面的输出中,我们可以看到当前已验证的用户是“myuser”,该用户连接到“mydatabase”数据库,并且拥有“readWrite”角色。
### 回答2:
要查看当前登录的MongoDB用户,可以使用以下两种方法:
方法一:使用db.runCommand()命令
1. 在MongoDB shell中,使用以下命令切换到admin数据库:use admin
2. 使用以下命令查看当前登录用户:db.runCommand({whatsmyuri:1})
3. MongoDB将返回一个包含当前登录用户信息的文档,其中包括IP地址和端口号。
方法二:使用rs.status()命令
1. 在MongoDB shell中,使用以下命令查看当前MongoDB副本集的状态:rs.status()
2. 在返回的文档中,查找"me"字段,该字段将显示当前登录用户的IP地址和端口号。
无论使用哪种方法,都可以方便地查看当前登录的MongoDB用户信息。