public override void GroupUserDeleted(SPSecurityEventProperties properties) { base.GroupUserDeleted(properties); var group = properties.Web.Groups.GetByID(properties.GroupId); if (group.Name == "Report Viewers" || group.Name == "Administrators") { var removedUser = properties.Web.AllUsers.GetByID(properties.GroupUserId); var syncJob = new SyncJob(); syncJob.execute(properties.Web.Site, properties.Web, $"removerole~{removedUser.LoginName}~{group.Name}"); } }
public override void GroupUserAdded(SPSecurityEventProperties properties) { base.GroupUserAdded(properties); var group = properties.Web.Groups.GetByID(properties.GroupId); if (group.Name == "Report Viewers" || group.Name == "Administrators") { var addedUser = properties.Web.AllUsers.GetByID(properties.GroupUserId); var extendedList = properties.Web.SiteUserInfoList.Items.GetItemById(addedUser.ID); extendedList["Synchronized"] = false; extendedList.Update(); SSRSSyncQueueAgent.EnequePFEJobSingleSiteCollection(properties.Web.Site.WebApplication, properties.Web.Site); } }
public override void GroupUserDeleted(SPSecurityEventProperties properties) { base.GroupUserDeleted(properties); //Get the user being added SPUser delUser = properties.Web.AllUsers.GetByID(properties.GroupUserId); SPSecurity.RunWithElevatedPrivileges(delegate() { if (delUser != null && properties.GroupId == groupNum) { SPGroup spGroup = properties.Web.Groups[groupName]; if (spGroup != null) spGroup.RemoveUser(delUser); } }); }
public override void RoleDefinitionUpdating(SPSecurityEventProperties properties) { base.RoleDefinitionUpdating(properties); }
public override void RoleDefinitionDeleted(SPSecurityEventProperties properties) { base.RoleDefinitionDeleted(properties); }
public override void RoleAssignmentDeleting(SPSecurityEventProperties properties) { base.RoleAssignmentDeleting(properties); }
public override void RoleAssignmentAdded(SPSecurityEventProperties properties) { base.RoleAssignmentAdded(properties); }
public override void GroupUpdating(SPSecurityEventProperties properties) { base.GroupUpdating(properties); }
public override void GroupDeleted(SPSecurityEventProperties properties) { base.GroupDeleted(properties); }
/// <summary> /// /// </summary> /// <param name="properties"></param> public override void GroupUserAdded(SPSecurityEventProperties properties) { SPEventReceiverType eventtype = properties.EventType; //if (properties.UserLoginName.Contains("zimbramembershipprovider") || properties.UserLoginName.Contains("zimbraroleprovider")) //{ using (SPSite site = new SPSite(properties.SiteId)) { SPWeb web = site.OpenWeb(properties.WebId); SPList users = web.GetCatalog(SPListTemplateType.UserInformation); if (users != null) { SPListItem luser = users.GetItemById(properties.GroupUserId); string value = luser[ZimbraFieldId.Name] as string; if (!string.IsNullOrWhiteSpace(value)) { try { if (value.Contains("zimbramembershipprovider") || value.Contains("zimbraroleprovider")) { //0#.f|zimbramembershipprovider|12073385 string identifier = value.Split('|').Last(); MembershipUser user; if (!string.IsNullOrWhiteSpace(identifier)) { user = Provider.GetUser(identifier, true); } else { user = Provider.GetUser(value, true); } ZimbraMembershipUser zuser = null; if (user != null && user.GetType() == typeof(ZimbraMembershipUser)) { zuser = user as ZimbraMembershipUser; } if (zuser != null) { luser[ZimbraFieldId.Title] = zuser.displayName; luser[ZimbraFieldId.SipAddress] = zuser.Email; luser.Update(); } } } catch { } } } /* * string identifier = properties.UserLoginName.Split('|').Last(); * MembershipUser user; * if (!string.IsNullOrWhiteSpace(identifier)) * { * user = Provider.GetUser(identifier, true); * } * else * { * user = Provider.GetUser(properties.UserLoginName, true); * } * * ZimbraMembershipUser zuser = null; * if (user != null && user.GetType() == typeof(ZimbraMembershipUser)) * { * zuser = user as ZimbraMembershipUser; * } * * if (zuser != null) * { * * } */ } int id = properties.GroupUserId; string name = properties.GroupUserLoginName; SPUserToken token = properties.OriginatingUserToken; string displayname = properties.UserDisplayName; string loginname = properties.UserLoginName; //base.GroupUserAdded(properties); }