Sharepoint - получение группы пользователей и прав доступа программно - PullRequest
2 голосов
/ 12 мая 2009

в настоящее время я пытаюсь получить все группы, которые есть на моем сайте sharepoint. После чего мне нужно знать, какие пользователи входят в группу, и уровень разрешений сайта для каждого пользователя. Я использую WSS 3.0, разрабатываю на C # (visual studio 2008). Помощь действительно нужна, так как я все еще новичок в этой области. Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 12 мая 2009

Группы можно найти как:

SPSite siteCollection = new SPSite("site url");
SPWeb site = siteCollection.OpenWeb();

foreach(SPGroup group in site.Groups){
  Console.WriteLine(group.Name);

   foreach(SPUser u in group.Users){
         //will give you users in group, you can then grab the roles of the user
   }
}

Чтобы узнать, какие разрешения имеет роль:

SPSite oSiteCollection = SPContext.Current.Site;
using(SPWeb oWebsite = oSiteCollection.AllWebs["Site_Name"])
{
    SPMember oMember = oWebsite.Roles["Role_Name"];
    oWebsite.Permissions[oMember].PermissionMask = 
        SPRights.ManageLists | SPRights.ManageListPermissions;
}

Матрицу разрешений можно найти здесь

0 голосов
/ 22 апреля 2014

Если вы ищете код для работы с объектной моделью клиента, вы можете просмотреть следующие ссылки.

  1. Для получения групп. http://social.technet.microsoft.com/wiki/contents/articles/24075.how-to-get-sharepoint-user-group-names-in-a-netc-client-application-using-sharepoint-client-object-model.aspx

  2. Для получения уровней разрешений, связанных с группами. http://social.technet.microsoft.com/wiki/contents/articles/24087.how-to-get-the-permission-levels-associated-with-sharepoint-user-groups-using-client-object-model-in-netc.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...