Добавление пользователя FBA в список ShareIn UserInfo - PullRequest
1 голос
/ 08 декабря 2010

Мы успешно добавляем нового пользователя в наш провайдер аутентификации на основе форм, используя класс Membership в C #.Мы можем войти на некоторые общедоступные сайты, но после попытки поиска нового созданного пользователя в окне выбора людей он не отображается.

Похоже, нам нужно добавить запись UserInfo в базу данных WSS_Content_ *.Поэтому мы ссылались на веб-сервис people.asmx, работающий на нашей Sharepoint.После попытки создания UserInfo с помощью следующего метода, метод возвращает неразрешенный объект PrincipalInfo (UserInfoID равен -1, IsResolved - false и т.

1 Ответ

1 голос
/ 10 декабря 2010

Мне удалось решить эту проблему, создав веб-службу, работающую на сервере Sharepoint.Для создания записи UserInfo требуются следующие два метода:

    [WebMethod]
    public void CreateUser(string username)
    {
        SPWeb web = new SPSite(this.ExtranetSite).OpenWeb();

        web.AllUsers.Add(this.MembershipProvider + ":" + username, username, username, "");
        web.EnsureUser(this.MembershipProvider + ":" + username);
    }

    [WebMethod]
    public void DeleteUser(string username)
    {
        SPWeb web = new SPSite(this.ExtranetSite).OpenWeb();

        web.SiteUsers.Remove(this.MembershipProvider + ":" + username);
        web.Update();
    }
...