为域用户启用 WinRM

为域用户启用 WinRM

是否可以为域用户启用 winrm 连接?我有一个使用 winrm 连接远程计算机的自动化脚本。winrm 连接无法像使用管理员帐户那样使用域用户名和密码。是否有任何设置必须启用才能让域用户通过 WinRM 访问计算机?

使用 Terraform (vsphere) 实现自动化

答案1

有两种方法(我知道的)可以实现这一点。

首先(最简单的),您可以将所需的帐户添加到特定范围的安全组“远程管理用户”组(如果要访问域控制器,则为域组;如果要访问成员服务器或工作站,则为本地组)。

或者,您可以注册一个新的 PS 会话配置(注册 PSSessionConfiguration- 我不会深入讨论这个过程),或者修改现有默认 PSSessionConfiguration、Microsoft.Powershell 的 ACL(设置 PSSessionConfiguration)。


要修改现有配置,您可以通过运行以下命令来使用 SDDL GUI:

Set-PSSessionConfiguration -Name Microsoft.Powershell -ShowSecurityDescriptorUI

这将弹出一个熟悉的安全对话框来修改 ACL。根据您要执行的操作,您必须相应地调整权限。这必须在每个端点上手动重复。

PSSession 配置的权限对话框

或者,如果希望编写脚本来更改多个端点,则可以使用 SDDL 字符串。根据您对 SDDL 语法的熟悉程度,这可能会更具挑战性,但它可以让您轻松“部署”更改。

Set-PSSessionConfiguration -Name Microsoft.Powershell -SecurityDescriptorSddl "O:NSG:BAD:P(A;;GA;;;BA)(A;;GA;;;RM)(A;;GXGR;;;S-1-5-21-XXXXXXXXX-XXXXXXXXX-XXXXXXXXX-XXXXX)(A;;GA;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)"

上述 SDDL 转换为默认设置(如上图所示),并为具有读取和执行权限的 AD 对象添加一个附加条目。S-1-5-32-580 是远程管理用户组的知名 SID。

  <SCOPE>\Administrators:  Full Control 
  <SCOPE>\S-1-5-32-580:    Full Control 
  <SCOPE>\<Principal>:     Execute (Invoke);Read(Get,Enumerate,Subscribe)
  INTERACTIVE:             Full Control

答案2

也许这些链接可以有所帮助。

如何使用域组策略为 PowerShell 远程处理启用 WinRM

相关内容