在PowerShell中连接到受约束的端点失败

时间:2016-03-10 23:02:22

标签: powershell powershell-remoting

我正在测试VM上使用受限制的端点并执行以下操作:

  • 创建 TestUser 本地帐户(仅属于Users组的一部分)
  • 运行以下内容:

    New-PSSessionConfigurationFile -Path c:\test.pssc -ModulesToImport smbshare -PowershellVersion 3.0 -VisibleFunctions 'get-smbshare' -SessionType RestrictedRemoteServer

  • 注册终端使用:

    Register-PSSessionConfiguration -Path c:\test.pssc -Name test -ShowSecurityDescriptorUI -AccessMode remote -RunasCredential Administrator

  • 尝试使用以下方式连接到它:

    Enter-PSSession -ComputerName localhost -ConfigurationName test -Credential TestUser

我浏览了所有内容,直到尝试连接为止。它说拒绝接入。 PS shell以管理员身份运行。我根据remote_troubleshooting文档给了TestUser读取和执行端点的权限。如果我在没有凭证参数的情况下运行命令或传入管理员用户名,那么它连接正常......我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

我刚刚完成了如何让本地管理员帐户使用远程会话。

  1. 我必须使用" Negotiate"的身份验证机制。 Kerberos是默认的身份验证机制,但它不适用于本地帐户。

  2. 必须将目标计算机添加到工作站上的WinRM可信主机。这似乎是使用Negotiate而不是Kerberos的结果。

  3. 必须将本地帐户添加到目标计算机上本地组WinRMRemoteWMIUsers_的本地组中。

  4. 在这种情况下,会话需要以提升的权限运行,并且我必须添加一个DWORD注册表子项" LocalAccountTokenFilterPolciy"到HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System,其值为1,以允许创建具有远程使用的本地帐户的提升权限的安全令牌。由于您使用的是委托会话,因此您可能不需要这样做。