Вы используете проверку подлинности Windows на своем сайте SharePoint?
Если да, вам не нужен скрипт для синхронизации групп, если вы это сделаете. Они будут синхронизироваться самостоятельно.Удаление пользователя из группы AD также приведет к его удалению из группы SharePoint.
Возможно, вы столкнулись с небольшой задержкой, из-за которой, возможно, вы решили, что вам нужен сценарий (это должно занять не более 15 минут).
Если вы спешите, вы можете сделать IISReset, и вы должны немедленно увидеть изменения.
Если вы не используете проверку подлинности Windows или если ваша группа SharePoint являетсяЕсли группа будет отличаться от группы AD, то вам нужно будет добавить процедуру синхронизации.
Лучше всего, вероятно, будет какой-то код (или выполняемый пакет служб SSIS) каждые x минут.В цикле проверьте каждого члена вашей группы AD.Проверьте, что они находятся в группе SharePoint.Если это не так, используйте код, подобный следующему:
using (SPWeb oWebsiteRoot = SPContext.Current.Site.RootWeb)
{
//Loop through your AD group here
oWebsiteRoot.AllowUnsafeUpdates = true;
oWebsiteRoot.Groups["Employee"].AddUser(username, email, fullname, String.Empty);
oWebsiteRoot.Update();
}
, где Сайт - это семейство ваших сайтов, и у пользователя есть вся необходимая информация.Это создаст пользователя SharePoint и добавит его в группу.
Когда это будет сделано, просмотрите каждого пользователя SharePoint и убедитесь, что он входит в группу AD.Если нет, удалите их:
using (SPWeb oWebsiteRoot = SPContext.Current.Site.RootWeb)
{
SPGroupCollection collGroups = oWebsiteRoot.SiteGroups;
SPUser oUser = oWebsiteRoot.Users["User_Name"];
foreach (SPGroup oGroup in collGroups)
{
oGroup.RemoveUser(oUser);
}
}