【发布时间】:2017-09-19 11:29:31
【问题描述】:
我正在使用以下代码连接到 Windows 2008 服务器。
WinRmTool.Builder builder = WinRmTool.Builder.builder("hostname", "domain\username", "password");
builder.setAuthenticationScheme(AuthSchemes.NTLM);
builder.useHttps(false);
WinRmTool tool = builder.build();
tool.executePs("COMMAND");
我遇到了异常
原因:java.io.IOException:在 Conduit 上检测到授权循环 "{http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd}WinRmPort.http-conduit" 在 URL“http://hostname:5985/wsman”上,领域为“null”
我无需在浏览器中进行任何身份验证即可访问WS“http://hostname:5985/wsman”,Windows服务器上的winrm服务设置如下。
AllowUnencrypted = false
Auth
Basic = false
Kerberos = true
Negotiate = true
Certificate = false
CredSSP = false
CbtHardeningLevel = Relaxed
DefaultPorts
HTTP = 5985
HTTPS = 5986
我的客户端的设置也相同。对 winrm WS 的 HTTPS 访问不起作用,所以我使用的是 useHttps(false)。
客户端和服务器位于不同的域中。我能够使用提供的主机名、域\用户名和密码成功地 rdp 到服务器。
我尝试将身份验证方案更改为 kerberos/basic/digest。它们似乎都不起作用。我在两边都试过'allowUnencrypted=true',但还是不行。
我是否缺少任何 conf/prop 文件?
【问题讨论】: