是否可以为域用户启用 winrm 连接?我有一个使用 winrm 连接远程计算机的自动化脚本。winrm 连接无法像使用管理员帐户那样使用域用户名和密码。是否有任何设置必须启用才能让域用户通过 WinRM 访问计算机?
使用 Terraform (vsphere) 实现自动化
答案1
有两种方法(我知道的)可以实现这一点。
首先(最简单的),您可以将所需的帐户添加到特定范围的安全组“远程管理用户”组(如果要访问域控制器,则为域组;如果要访问成员服务器或工作站,则为本地组)。
或者,您可以注册一个新的 PS 会话配置(注册 PSSessionConfiguration- 我不会深入讨论这个过程),或者修改现有默认 PSSessionConfiguration、Microsoft.Powershell 的 ACL(设置 PSSessionConfiguration)。
要修改现有配置,您可以通过运行以下命令来使用 SDDL GUI:
Set-PSSessionConfiguration -Name Microsoft.Powershell -ShowSecurityDescriptorUI
这将弹出一个熟悉的安全对话框来修改 ACL。根据您要执行的操作,您必须相应地调整权限。这必须在每个端点上手动重复。
或者,如果希望编写脚本来更改多个端点,则可以使用 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
也许这些链接可以有所帮助。