.NET调用SharePoint Web服务获取HTTP 401 Unauthorized异常

mar*_*kti 5 .net sharepoint ntlm web-services active-directory

我试图调用SharePoint列表服务来获取列表定义和数据.SharePoint网站是我的公司,但我无法控制它.以下是我对服务器安全性的了解:

服务器是HTTPS://登录时服务器接受Windows Active Directory凭据...

我已经尝试过Basic,Digest,CredentialCache,只是NetworkCredential,UnsafeAuthenticatedConnectionSharing,UseDefaultCredentials,PreAuthenticate ......不确定正确的配置是什么......

我收到的错误是HTTP 401 Unauthorized.

                Uri url = new Uri(baseAddress + "/_vti_bin/Lists.asmx", UriKind.Absolute);
                Lists.Lists client = new Lists.Lists();

                // sometimes works
                CredentialCache cache = new CredentialCache();
                cache.Add(url, "NTLM", new NetworkCredential(context.UserName, context.Password, context.Domain));
                client.UseDefaultCredentials = false;
                client.Credentials = CredentialCache.DefaultCredentials;
                // doesn't work ever
                //client.Credentials = new NetworkCredential(context.UserName, context.Password, context.Domain);
                //client.PreAuthenticate = true;
                client.UnsafeAuthenticatedConnectionSharing = true;
                client.Url = url.AbsoluteUri;
                listData = client.GetList(listName).OuterXml;
Run Code Online (Sandbox Code Playgroud)