我使用的是 Windows Vista,启用了 UAC。我安装了一个应用程序,安装程序需要管理员权限。然后安装程序启动了该应用程序。我想知道该应用程序是否继续以管理员权限运行。
我尝试过 Windows 任务管理器和进程资源管理器,但似乎都没有显示此信息。
答案1
答案2
在 Process Explorer 中,您可以更改显示的列并从“进程映像”选项卡中添加“完整性级别”列:
这显然是一个技术术语,指的是以管理员权限运行进程时发生的变化。如果您以管理员身份运行 Process Explorer,它将显示普通进程为“中”完整性级别,而高级进程为“高”。
请注意,如果您以普通用户身份运行进程资源管理器,它将显示具有管理员权限的进程,并且在完整性级别列中显示空白条目。
答案3
使用操作系统进行更新:资源监视器,我相信它包含在 Windows 7 和 Windows 10 中(不确定 Vista 是否包含)在 CPU 选项卡的进程列表部分有一个可选的“提升”列,这似乎非常准确。
答案4
如果你喜欢使用命令行工具,访问检查效用来自MS Sysinternals 套件可用于检查进程是否以管理员权限运行。
下面的标志对于此目的很有用:
(process)选项
-p
接受正在运行的进程的名称或 PID。(详细)选项
-v
打印Windows 完整性级别(安静)选项
-q
可防止打印版本信息。(完整)选项
-f
还可用于提供有关进程的更多信息(用户、组和权限的安全令牌详细信息),但不需要此级别的附加详细信息来检查提升的权限。
例子
列出所有正在运行的进程的权限cmd
:
> accesschk.exe -vqp cmd
[5576] cmd.exe
Medium Mandatory Level [No-Write-Up, No-Read-Up]
RW ICS\Anthony
PROCESS_ALL_ACCESS
RW NT AUTHORITY\SYSTEM
PROCESS_ALL_ACCESS
[8224] cmd.exe
Medium Mandatory Level [No-Write-Up, No-Read-Up]
RW ICS\Anthony
PROCESS_ALL_ACCESS
RW NT AUTHORITY\SYSTEM
PROCESS_ALL_ACCESS
Error opening [6636] cmd.exe:
Access is denied.
在这里,我们可以看到cmd
我启动了三个进程。前两个进程有一个中等的强制(完整性)级别,并显示为在我的域帐户下运行,表明这些进程是在没有管理员权限的情况下启动的。
但是,最后一个进程 (PID 6636) 是以提升的权限启动的,因此我的非特权命令无法读取有关该进程的信息。以提升的权限运行accesschk
并明确指定其 PID 会打印以下信息:
> accesschk.exe -vqp 6636
[6636] cmd.exe
High Mandatory Level [No-Write-Up, No-Read-Up]
RW BUILTIN\Administrators
PROCESS_ALL_ACCESS
RW NT AUTHORITY\SYSTEM
PROCESS_ALL_ACCESS
现在我们可以看到完整性级别是高的Administrators
并且该进程在内置安全组下运行。