添加用户到SharePoint的Webservice(类似于SPWeb.EnsureUser)

4

我需要通过Web服务向SharePoint网站(WSS 3.0)添加用户。

使用API,我将使用SPWeb.EnsureUser方法,但我无法在服务器上运行自己的代码。
我希望用户和组Web服务可以提供帮助,但它没有提供合适的方法。

那么,是否有Web服务等效于SPWeb.EnsureUser?

1个回答

7

我昨天偶然发现了这个问题。事实上,有一个Web服务与web.EnsureUser等效,但它不在UserGroup Web服务中。相反,使用People Web服务(_vti_bin/people.asmx)的ResolvePrincipals方法。

这里是Microsoft文档

关键是将addToUserInfoList的值设置为true。服务调用返回的PrincipalInfo对象包括一个UserInfoID,您可以在该站点上执行其他成员身份相关操作时使用它。

以下是使用PowerShell 2.0调用Web服务的示例:

$client = new-webserviceproxy http://mysharepointsite/_vti_bin/people.asmx?wsdl -usedefault
$person = $client.ResolvePrincipals(@('domain\user'), 'User', $true)
# ...

您还可以使用SearchPrincipals方法来确定该主体是否已添加到站点集合中。检查PrincipalInfo.UserInfoID将返回一个值> -1,如果该主体已经被添加到站点集合用户中。 - SliverNinja - MSFT

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接