当前位置: 首页 > 知识库问答 >
问题:

在域为“null”的URL上的管道上检测到Winrm4j授权循环

戚鸿福
2023-03-14

我正在使用以下代码连接到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:在导管上检测到授权循环“{http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd}WinRmPort。http管道“在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文件?

共有1个答案

邓令雪
2023-03-14

在远程服务器上配置以下设置后,相同的代码工作

winrm set winrm/config/service/Auth '@{Basic="true"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
 类似资料:
  • org.apache.cxf.拦截器。故障:无法发送消息。位于org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderIntersector.java:64),位于org.apache.xxf.phase.PhaseIntercepto

  • 我尝试设置Firebase身份验证,在localhost上它也起作用了。但是当我在Firebase上获得应用程序后,我会得到错误。 我已经在Firebase看过了,域是白名单。 我使用Google登录firebase的代码: 以下是完整的错误消息:

  • 我正在尝试为uber生成授权url https://login.uber.com/oauth/authorize?client_id=xxxx&response_type=code&scope=history&redirect_uri=HTTP%3a%2f%2flocalhost%2fcallback 好的 https://login.uber.com/oauth/authorize?client

  • 这就是输出: 问题是karma无法启动chrome浏览器。我认为这个问题会发生在任何码头工人的环境中。如何在bitbucket管道中运行测试?

  • 登录时我总是得到无效的授权类型。我使用的是Laravel 7和passport 8.4。 我可以确认,我创建的client_secret没有错误运行php artisan护照:安装,但我找不到任何可能性,为什么获取访问令牌和刷新令牌不工作。 我使用自定义用户提供商,正确地设置在配置,我注意到如果我改变grant_typeclient_credentials它将只是工作,但没有刷新令牌,我想要什么。