如何使用 WMI 将用户添加到终端服务 RDP 权限

本文内容

本文介绍了向终端服务远程桌面协议添加用户或组的三种方法 (RDP) 权限。

适用于:  Windows Server 2012R2

原始 KB 编号:   290720

摘要

这三种方法中的两种方法Windows Management Instrumentation (WMI) 。 一个方法是通过图形用户界面 (GUI) ,另两个方法是使用脚本和 WMI 命令行实用工具 wmic 来使用 WMI。

更多信息

若要将用户或组添加到终端服务 RDP 权限,请使用下列方法之一。

使用 GUI

打开"终端服务配置"。

在"连接"文件夹中,右键单击 "RDP-Tcp"。

选择 "属性"。

在" 权限" 选项卡上 ,选择"添加", 然后添加所需的用户和组。

备注

你无法使用此 GUI 配置使用 RDP 登录控制台会话的权限。 若要将控制台会话的权限 (为零) ,必须使用下面的 WMI 方法,并指定控制台而不是RDP-Tcp名称。

在脚本中使用 WMI

Microsoft 提供的编程示例仅用于进行说明,而不提供明示或默示担保。 这包括(但不限于)针对特定用途的适用性或适用性的默示担保。 本文假定您熟悉所演示的编程语言以及用于创建和调试过程的工具。 Microsoft 支持工程师可以帮助解释特定过程的功能。 但是,它们不会修改这些示例以提供附加功能或构造过程以满足您的特定要求。 使用下面的代码示例创建脚本:

set RDPObj = GetObject("winmgmts:{impersonationLevel=impersonate}!Win32_TSPermissionsSetting.TerminalName='RDP-Tcp'")
RDPobj.AddAccount "Domain\User", X

其中 "Domain\User",X:

域\用户:目标域 (用户或) 要授予其权限的用户或组。 对于本地帐户,将 Domain\User 替换为仅 User,其中 User 是运行此命令的计算机上的本地帐户。

X: 要授予的访问类型:

0 = WINSTATION_GUEST_ACCESS
1 = WINSTATION_USER_ACCESS
2 = WINSTATION_ALL_ACCESS

若要更改控制台会话的权限,将终端名称更改为控制台而不是 RDP-Tcp。

set RDPObj = GetObject("winmgmts:{impersonationLevel=impersonate}!Win32_TSPermissionsSetting.TerminalName='Console'")RDPobj.AddAccount "Domain\User", X

若要将权限恢复为默认权限,请指定相关的终端名称。 然后,调用 RestoreDefaults 方法。

set RDPObj = GetObject("winmgmts:{impersonationLevel=impersonate}!Win32_TSPermissionsSetting.TerminalName='Console'")RDPobj.RestoreDefaults

使用 WMI 命令行实用工具:WMIC

在命令提示符下,键入 wmic。

备注

如果它不在路径中,则添加 %SystemRoot%\System32\Wbem\ 或更改该目录并运行 wmic。

在 wmic:root\cli> prompt 中键入以下命令:

PATH WIN32_TSPermissionsSetting.TerminalName="RDP-TCP" 调用 AddAccount "Domain\user",X

其中 "Domain\User",X:

域\用户:目标域 (用户或) 要授予其权限的用户或组。 对于本地帐户,将 Domain\User 替换为仅 User,其中 User 是运行此命令的计算机上的本地帐户。

X: 要授予的访问类型:

0 = WINSTATION_GUEST_ACCESS

1 = WINSTATION_USER_ACCESS

2 = WINSTATION_ALL_ACCESS

若要更改控制台会话的权限,将终端名称更改为控制台而不是 RDP-Tcp。

PATH WIN32_TSPermissionsSetting.TerminalName="Console" call AddAccount "Domain\user",X

若要将权限恢复为默认权限,请指定相关的终端名称。 然后,调用 RestoreDefaults 方法。

PATH WIN32_TSPermissionsSetting.TerminalName="Console" call RestoreDefaults

以下信息是运行 wmic 并输入命令后你将看到的文本示例:

C:\WINDOWS\system32\wbem>wmic
wmic:root\cli>
wmic:root\cli> PATH WIN32_TSPermissionsSetting.TerminalName="RDP-TCP" call AddAccount "Domain\User", 2
Execute (\\\\root\vimv2: WIN32_TSPermissionsSetting.TerminalName="RDP-TCP")->AddAccount() (Y/N/?)
Method Execution Successful.
Out Parameters:
instance of _PARAMETERS
{
RetureValue=0;
};

键入 quit 退出 wmic 提示符并返回到命令提示符。