如何修复 "WinRM客户端无法处理请求.以下标志不能同时指定:WSManFlagUseClientCertificate和WSManFlagCredUsernamePassword.
描述
This Windows Remote Management (WinRM) error occurs because your connection configuration is trying to use two mutually exclusive authentication methods at the same time.
- WSManFlagUseClientCertificate 命令 WinRM 使用加密客户端证书进行身份验证.
- WSManFlagCredUsernamePassword 命令WinRM使用标准用户名和密码进行身份验证 (Basic,CredSSP或谈判身份验证).
Windows安全协议禁止在单个 WinRM 会话中同时使用证书和纯文本凭证对.您必须选择一个身份验证方法并删除另一个配置标志.
逐步修复问题
根据您执行命令的方式 (PowerShell 或特定的软件工具),请遵循下面的适当方法来解决冲突.
方法1:修复PowerShell会话配置
如果您正在使用 New-PSSession, Enter-PSSession 或是 Invoke-Command 在PowerShell中,您可能组合了相互冲突的参数.
- 打开你的PowerShell脚本或控制台.
- 找到远程连接启动的代码行.
- 检查是否使用两种方法.
-CertificateThumbprint(或是-Authentication Certificate) 以及-Credential参数在一起. - Choose one option:
- To use Username/Password: 删除证书参数.
# Correct Username/Password Approach $Cred = Get-Credential New-PSSession -ComputerName "RemotePC" -Credential $Cred -Authentication Negotiate - To use Certificate: 移除
-Credential参数# Correct Certificate Approach New-PSSession -ComputerName "RemotePC" -CertificateThumbprint "1234567890ABCDEF..."
- To use Username/Password: 删除证书参数.
方法2:修复可能的库存和游戏簿
如果在从 Ansible 控制节点连接到 Windows 主机时出现此错误,则您的主机变量存在冲突.
- 打开您的Ansible库存文件 (
hosts.yml) 或您的组变量文件. - 找一个
ansible_winrm_cert_validation或是ansible_winrm_certificate_key_pem变量. - 找一个
ansible_password这里是我的家.ansible_user变量. - Choose one option:
- To use Username/Password: 删除或评论证书变量行. 确保
ansible_winrm_transport已设置为ntlm,kerberos或是credssp. - To use Certificate: 已经准备好了.
ansible_winrm_transport为了certificate并且取出ansible_password根据配置变量.
- To use Username/Password: 删除或评论证书变量行. 确保
方法3:将WinRM客户端身份验证重新设置为默认
如果问题是由系统范围内的客户端设置损坏造成的,则重置 WinRM 客户端配置可以帮助.
- 按下 Start 菜单,类型
cmd,右键按下 Command Prompt,并选择 Run as administrator. - 运行下面的命令来检查您的当前客户端配置:
winrm get winrm/config/client - 运行此命令将 WinRM 属性重置到默认设置:
winrm reset - 重新启动 WinRM 服务以应用更改:
net stop winrm net start winrm
方法4:修复第三方监控工具 (例如SolarWinds,PRTG,Nagios)
如果一个监控应用程序在调查 Windows 服务器时出现此错误:
- 打开您的监控工具的管理控制台.
- 导航到目标 Windows 机器的资产设置或凭证管理器.
- 检查连接配置文件属性.
- 取消标记的任何框. Use Client Certificate 或是 SSL Client Certificate 如果您已经在字段中输入了用户名和密码.
- 保存个人资料,并强制重新调查节点.
可能有一些错误.. Learn Microsoft