曾几何时,想要获取SPGroup Add及SPUserAdd事件,在网上查找各种方法,都没有找到相对应的解决办法,如今在VS 2013 Preview版本 提供了 SPSecurityEventReceiver 这个类,主要是 SPGroup、SPUser事件程序的基类,我们可以通过继承这个类,来实现相应的操作。
一、创建一个类继承 SPSecurityEventReceiver
二、创建Features的事件处理程序,在激活Feature时注册事件处理程序。
三、停用Feature时,删除事件处理程序
四、部署成功后,我们创建一个组及添加一个用户,设置断的
总结:通过操作与调试发现有两点不太好,需要改进(只代表个人意见)
一、通过VS创建事件处理程序时找不到相应的事件处理程序,只能通过创建类并继承SPSecurityEventReceiver,这样操作过于麻烦。
二、通过Debug,发现添加用户时,添加的当前用户目前无法获取,只能获取一个 GroupUserId ,UserName,DisplayName也没有。如何通过GroupUserId获取相应的UserName,目前还没有找到方法,如果哪位兄弟知道可以回复一下的。
以下列出 SPSecurityEventReceiver 里面的所有相应的事件
SharePoint Group Events -
1.GroupAdded、GroupAdding
2.GroupDeleted、GroupDeleting
3.GroupUpdated、GroupUpdating
SharePoint User Events -
1.GroupUserAdded、GroupUserAdding
2.GroupUserDeleted、GroupUserDeleting
3.RoleAssignmentAdded、RoleAssignmentAdding
4.RoleAssignmentDeleted、RoleAssignmentDeleting
5.RoleDefinitionAdded、RoleDefinitionAdding
6.RoleDefinitionDeleted、RoleDefinitionDeleting
7.RoleDefinitionUpdated、RoleDefinitionUpdating
SharePoint Inheritance Events -
1.InheritanceBreaking、InheritanceBroken
2.InheritanceReset、InheritanceResetting