zoukankan      html  css  js  c++  java
  • sharepoint 2013 文档库eventhandle权限控制

    记录一下如何在sharepoint server 2013文档库中,使用eventhandle控制文档库document library的条目item权限。

           ///<summary>

            ///已添加项.

            ///</summary>

            public override void ItemAdded(SPItemEventProperties properties)

            {

                base.ItemAdded(properties);

                SPSecurity.RunWithElevatedPrivileges(delegate()

                {

                    if(properties.ListTitle =="共享文档1")

                    {

                        SPSite site =newSPSite(properties.SiteId);

                        SPWeb web =site.OpenWeb();

                        web.AllowUnsafeUpdates = true;

                        SPList list =web.Lists[properties.ListId];

                        SPFile file =list.GetItemById(properties.ListItemId).File;

                        SPListItem item = file.Item;

                        //权限断开,并且移除掉其它权限

                        if(!item.HasUniqueRoleAssignments)

                        {

                           item.BreakRoleInheritance(false);

                        }

                        //添加用户权限

                        SPUser CurrentUser =web.EnsureUser(properties.UserLoginName);

                        SPRoleAssignment MyRoleAssignment =newSPRoleAssignment(CurrentUser);

                       MyRoleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions.GetByType(SPRoleType.WebDesigner));

                       item.RoleAssignments.Add(MyRoleAssignment);

     

                        CurrentUser =web.EnsureUser("kw\cxx");

                        MyRoleAssignment = newSPRoleAssignment(CurrentUser);

                       MyRoleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions.GetByType(SPRoleType.WebDesigner));

                       item.RoleAssignments.Add(MyRoleAssignment);

                        item.Update();

                    }

                });

            }

  • 相关阅读:
    composer 的安装以及一些插件的下载等
    linux 服务器安装php5.6
    数据库异地备份---服务器配置流程
    expect安装
    linux 服务器安装mysql5.6
    使用navicat 使用IP、用户名、密码直接连接linux服务器里面的数据库
    函数指针 指针函数
    信号量
    消息队列-Message Queue
    生成库文件,会链接依赖的库文件吗?
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3184523.html
Copyright © 2011-2022 走看看