我有一个 Windows 服务,我想使用特定用户登录它 - 因此我添加了通过
ntrights
作为服务登录的用户权限。
这就是我添加用户权限的方式:
ntrights +r SeServiceLogonRight -u "USER" -m \\%COMPUTERNAME%
使用此命令检查用户是否具有特定权限:
whoami /priv /fo CSV | convertFrom-Csv | Select-String -Pattern "SeServiceLogonRight" -Quiet
如果此命令返回
True
,则用户拥有给定的权限,否则没有。
我还编写了一个可能有用的开源工具:
https://github.com/Bill-Stewart/PrivMan
此命令的替换:
ntrights +r SeServiceLogonRight -u "USER" -m \\%COMPUTERNAME%
是这个吗:
PrivMan -a "USER" -g "SeServiceLogonRight" -c %COMPUTERNAME%
要测试计算机上是否有
USER
SeServiceLogonRight
,您可以使用以下命令:
PrivMan -a "USER" -t "SeServiceLogonRight" -c %COMPUTERNAME%
在这种情况下,如果用户具有指定的特权/权利,则退出代码(对于 cmd.exe,为
%ERRORLEVEL%
,对于 PowerShell,为 $LASTEXITCODE
)为 1,如果用户没有指定的特权/权限,则退出代码为 0。其他退出代码表示错误。