2010-06-11 44 views
3

我有一个使用Visual Basic编写的脚本,它使用WMI在远程系统上(作为参数给出的)启动一个进程(作为参数提供给脚本)。在远程系统上使用管理员帐户时,但使用非管理员帐户时,该脚本正常工作,我得到以下错误:如何使用WMI作为非管理员用户在远程Windows系统上运行命令?

ConnectServer Failed w/ (-2147024891) Access is denied. 

我希望能够运行在远程系统上的进程如一个非管理员用户使用这个脚本,我敢肯定,这个问题是由于远程系统上的安全设置,但我无法重置正确的。

回答

3

听起来好像您需要通过DCOMCNFG为目标机器上的此用户配置启动和激活权限。默认情况下,非管理员用户不具有远程启动和激活权限。

或者,根据您要连接的操作系统,可能会有一个“分布式COM用户”组,您可以向其添加用户。该组已具有适当的权限。分布式COM用户组首次包含在Windows Server 2003 Service Pack 1(DCOM Security Enhancements)中。

您可以阅读更多关于WMI和DCOM权限here。有关如何配置WMI和DCOM的更详细步骤包含在服务器故障线程Which permissions/rights does a user need to have WMI access on remote machines?中。

相关问题