2009-10-06 81 views
2

我有一个自定义Web服务部署到WSS 3中。它有两个Web方法。SharePoint自定义Web服务消耗问题 - HTTP 401:未授权

第一个返回加载组件的版本,而无需在SharePoint对象的任何调用。 第二返回有关库的一些基本信息,像:

var spLibrary = [find library logic]; 
return spLibrary.Name+"@"+spLibrary.Url; 

在客户端应用程序,我有类似如下:

var service = new WebService1(); 
service.Url = [url]; 
service.Credentials = System.Net.CredentialCache.DefaultCredentials; 

service.Method1(); 
service.Method2(); 

当客户端应用程序的机器上运行,其中的SharePoint是部署,一切正常。

当客户端应用程序的远程计算机(但同一用户下)第一方法仍然有效上运行,但第二个抛出System.Net.WebException:HTTP 401:未经授权。

我试图manualy设置凭据(service.Credentials =新System.Net.NetworkCredential(登录名,密码,域)),但是,这并不帮助。

我试图调用使用类似的场景 内置在SharePoint Web服务,他们的工作只是罚款: 很抱歉的错误...有些方法并不是没有适当的权限正常工作。

var service = new GroupsService(); 
service.Url = [url]; 
service.Credentials = System.Net.CredentialCache.DefaultCredentials; 

service.SomeMethod(); 

回答

3

问题已解决。 用户使用哪个帐户与共享点进行交互,获得了网站集管理权限,并且一切正常。

这不是一个双跃点的问题。

希望这经验将帮助其他人。

这里的link到MSDN论坛线程。