2010-05-26 3 views
3

Я пытаюсь вызвать GetUserInfo в списке sharepoint (используя веб-службы sharepoint), который, похоже, работает нормально, но только если пользователь, с которым я пытаюсь получить подробную информацию, уже добавил элемент в с использованием фактического сайта sharepoint.Sharepoint Webservices - GetUserInfo

Я хотел был бы иметь возможность вызвать GetUserInfo для людей которые havent уже добавили деталь к списку.

Сам список открыт для любых пользователей NT AUTHORITY \ authenticated для отправки сообщений, когда они добавляют элемент списка, он, кажется, добавляет их как член сайта, но, похоже, не добавляет их в определенную группу или роль (насколько я вижу!)

Неужели кто-то еще сталкивается с той же проблемой? Доступно ли обходное решение?

ответ

2

После некоторого рытья вокруг мне удалось выяснить путь вокруг этого.

У пользователя webservice (people.asmx) есть метод ResolvePrincipals, который принимает имена пользователей NT (или адрес электронной почты) и разрешает их ассоциированной учетной записи sharepoint для сайта - (включая уникальный идентификатор пользователь - это то, что я после)

метод имеет булево значение (addToUserInfoList), когда установлен верно, то будет автоматически добавить пользователя на сайте (если они не существуют)

Документацию MSDN можно найти здесь -

http://msdn.microsoft.com/en-us/library/people.people.resolveprincipals(v=office.12).aspx

1

Пользователи фактически не добавляются в список пользователей SharePoint, пока не посетили сайт.

Вы только после входа в систему NT или что-то еще?

+0

Я вызываю GetUserInfo, чтобы получить информацию (UserId и отображаемое имя) пользователя и использовать ее для заполнения поля People And Groups. Если я попытаюсь заполнить этот тип поля только NT Login (Domain \ Имя пользователя) Кажется, что это не работает. Есть ли способ программно добавить пользователей в список пользователей, используя их NT login? –

Смежные вопросы