java - javax.xml.ws.soap.SOAPFaultException:访问被拒绝
问题描述
我正在尝试使用 wirnm java 工具从 Linux 服务器连接 windows server 2012,我正在使用以下代码,
WinRmClientContext context = null;
WinRmToolResponse result = null;
WinRmTool.Builder builder = null;
try
{
context = WinRmClientContext.newInstance();
builder = WinRmTool.Builder.builder(serverIP, userName, password);
builder.setAuthenticationScheme(AuthSchemes.NTLM);
builder.port(5985);
builder.useHttps(false);
builder.disableCertificateChecks(true);
builder.context(context);
WinRmTool tool = builder.build();
tool.setRetriesForConnectionFailures(1);
result = tool.executePs("COMMAND");
}
catch (Exception e){
e.printStackTrace();
}
使用管理员帐户凭据可以正常工作,但是当我尝试使用非管理员或普通用户凭据时,它会出现“访问被拒绝”问题
线程“主”javax.xml.ws.soap.SOAPFaultException 中的异常:访问被拒绝。在 org.apache.cxf.jaxws.JaxWsClientProxy.mapException(JaxWsClientProxy.java:195) 在 org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:145) 在 com.sun.proxy.$Proxy46.create( Unknown Source) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang。 reflect.Method.invoke(Method.java:498) 在 io.cloudsoft.winrm4j.client.RetryingProxyHandler.invokeWithRetry(RetryingProxyHandler.java:47) 在 io.cloudsoft.winrm4j.client.RetryingProxyHandler.invoke(RetryingProxyHandler.java:34)在 io.cloudsoft.winrm4j.client 的 com.sun.proxy.$Proxy47.create(Unknown Source)。WinRmClient.createShell(WinRmClient.java:475) at io.cloudsoft.winrm4j.winrm.WinRmTool.executeCommand(WinRmTool.java:348) at io.cloudsoft.winrm4j.winrm.WinRmTool.executePs(WinRmTool.java:364) at com .tcpwave.winrm.demo.App.main(App.java:32) 原因:org.apache.cxf.binding.soap.SoapFault:访问被拒绝。在 org.apache.cxf.binding.soap.interceptor.Soap12FaultInInterceptor.handleMessage(Soap12FaultInInterceptor.java:66) 在 org.apache.cxf.binding.soap.interceptor.Soap12FaultInInterceptor.unmarshalFault(Soap12FaultInInterceptor.java:156) .cxf.binding.soap.interceptor.Soap12FaultInInterceptor.handleMessage(Soap12FaultInInterceptor.java:52) 在 org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308) 在 org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage (抽象故障链发起者观察者。
winrm 默认只使用管理员帐户,我们是否需要在 windows 服务器上配置任何其他设置或授予任何权限或将组关联到非管理员用户以建立 winrm 通信
非常感谢任何帮助或建议
提前致谢
解决方案
推荐阅读
- javascript - 浏览器不会呈现动态分配给 dataTable 单元格的 Javascript 变量中的 HTML 锚点
- python - Python,我想在导入csv文件后转换特定的列类型
- ios - 无法在 react-native 中清除 TextInput 的值
- html - 自动调整大小的 textarea 元素底部出现额外的空白
- javascript - 有没有办法让所有的 Facebook 广告?
- javascript - 怎么修?由于值错误,Discord.js Bot 一直离线
- java - (处理)创建第二个窗口使主窗口非常小
- java - view.findViewById() 在一个函数中返回 null 但在另一个函数中工作正常
- r - R 并行中止所有 mclapply 操作
- javascript - 数据表行:手动更新字段