Tag: sharepoint 2010

使用SSL加密和NTLM身份validation的HttpClient失败

我正在尝试在使用SSL加密(https)的Sharepoint 2010服务器上执行简单的REST调用,以及NTLM身份validation。 当服务器设置为不需要SSL(仅用于测试,服务器将需要生产中的SSL)时,我的NTLM身份validation和后续REST调用可以正常使用HttpClient。 但是,启用SSL后,身份validation将不再有效。 这是SSL处理的代码(设置为接受所有证书): SSLContext sslContext = SSLContext.getInstance(“TLS”); // set up a TrustManager that trusts everything sslContext.init(null, new TrustManager[] { new X509TrustManager() { public X509Certificate[] getAcceptedIssuers() { return null; } public void checkClientTrusted(X509Certificate[] certs, String authType) { } public void checkServerTrusted(X509Certificate[] certs, String authType) { } } }, new SecureRandom()); SSLSocketFactory sf = new […]

SharePoint 2010 Web服务上的Java JBoss 401错误

在Eclipse IDE中测试时,我的代码成功运行。 我正在使用生成的Copy.wsdl通过Web服务连接到MS SharePoint 2010 当我在JBoss服务器上部署代码(运行Adobe LifeCycle)时,我的代码收到401错误。 错误: Caused by: org.jboss.ws.WSException: Invalid HTTP server response [401] – Unauthorized at org.jboss.ws.core.soap.SOAPMessageUnMarshallerHTTP.read(SOAPMessageUnMarshallerHTTP.java:75) at org.jboss.remoting.transport.http.HTTPClientInvoker.readResponse(HTTPClientInvoker.java:608) at org.jboss.remoting.transport.http.HTTPClientInvoker.useHttpURLConnection(HTTPClientInvoker.java:402) at org.jboss.remoting.transport.http.HTTPClientInvoker.makeInvocation(HTTPClientInvoker.java:253) … 156 more 现在,如果我故意通过IDE使用错误的登录,我会收到此错误: com.sun.xml.internal.ws.client.ClientTransportException: The server sent HTTP status code 401: Unauthorized 更新: 所以经过更多的研究后发现J2EE支持,缺乏,NTLM就是原因。 我已经尝试了几种无法解决的解决方案。 码: protected void initialize(String username, String password) throws Exception { System.out.println(“initialize()…”); java.net.CookieManager cm […]

从Java使用SharePoint Web服务时NTLM失败了吗?

我有一个Java客户端,它使用从JDK 6使用JAX-WS实现编写的SharePoint 2010标准Web服务(sitedata.asmx,permissions.asmx等)。 到目前为止,使用自定义Authenticator实现和Authenticator.setDefault(…)方法对NTLM进行Authenticator Authenticator.setDefault(…) 。 在仅具有一个SharePoint服务器的测试环境上运行时,它可以正常工作。 我可以使用WireShark查看所有NTLM协商。 但是,如果在具有多个服务器,硬件负载平衡和多个SharePoint备用访问映射的客户上运行,我会从Web服务调用中获取错误401未授权。 我没有机会使用WireShark来调试该环境。 我从Windows机器(在客户设置上)运行我的客户端,因此根据Java文档,它应该适用于NTLM。 此外,我使用SharePoint的默认URL来访问Web服务(而不是负载平衡的URL)。 运行客户端应用程序的计算机不是SharePoint服务器。 它具有配置了NTLM的Windows集成身份validation。 此外,由于SharePoint管理策略,我无法访问SharePoint管理中心或对配置(也不是IIS)进行任何更改。 我想问一下是否有人知道这个问题是什么? 希望如果有人知道如何解决它? 提前致谢。 编辑: 重要的是,在两种环境中都授予了相同的权限级别。