Powershell - 在域管理员帐户下未运行时调用命令访问被拒绝

时间:2013-12-11 18:59:43

标签: powershell active-directory powershell-v3.0 domaincontroller winrm

我正在使用脚本在远程服务器上创建文件夹,该文件夹是文件服务器和RODC。 当我从域管理员用户运行脚本命令complet successfuly。当我使用可以管理RODC的组中的帐户运行时,我拒绝访问。

$remotefolder = [scriptblock]::create("New-Item -Path d:\testfolder -type directory -Force ")
Invoke-Command -ComputerName server1 -ScriptBlock $remotefolder

我收到此错误:

[server1] Connecting to remote server server1 failed with the following error message : Access is denied. 
For more information, see the about_Remote_Troubleshooting Help topic.
    + CategoryInfo          : OpenError: (server1:String) [], PSRemotingTransportException
    + FullyQualifiedErrorId : AccessDenied,PSSessionStateBroken

因为它是一个RODC,所以我没有本地组可以添加需要运行此脚本的用户。

有人知道我怎么能停止获取这个访问权限吗?

更新12/12: 我只在域成员服务器上尝试了相同的脚本块,并且我没有获得访问被拒绝的消息,文件夹是按原样创建的。如何在不使用域管理员用户的情况下在RODC上运行此脚本块的任何难题?

1 个答案:

答案 0 :(得分:2)

在执行此操作之前,您应该阅读PSSessionConfiguration,以便从

开始了解其含义
help about_Session_Configurations

首先,创建一个名为“RODC PowerShell Users”的域组。把自己放进去,等待复制,注销然后再打开。检查你是否在这个小组中。

其次,从RODC上升高的shell中运行:

Set-PSSessionConfiguration microsoft.powershell -ShowSecurityDescriptorUI

(在第一次之后,你可能想要使用-Force,但看看它在做什么很有用。)当被要求确认时点击Y.

几秒钟后,它将显示http://schemas.microsoft.com/powershell/microsoft.powershell

的权限用户界面

单击“添加”,在出现的对话框中输入您的组名,然后单击“确定”。

在“RODC PowerShell远程访问权限”框中,从“读取”和“执行”开始。 (您可能需要写入或完全控制,具体取决于您要执行的操作。) 单击“确定”。

然后在PowerShell窗口中输入Y以确认您要重新启动WinRM。

假设您已经在RODC上设置了远程处理,从远程信箱开始,您现在应该可以运行:

Invoke-Command -ComputerName server1 { $env:computername }