zoukankan      html  css  js  c++  java
  • SharePoint 权限

    SharePoint 权限

     

    SPSite site = listEvent.Site;
    SPWeb web = site.OpenWeb();
    string urlVal = listEvent.WebUrl + "/" + listEvent.UrlAfter;
    SPFile file = web.GetFile(listEvent.UrlAfter);
    while (file.CheckOutStatus != SPFile.SPCheckOutStatus.None)
    {
             file = web.GetFile(listEvent.UrlAfter);
    }
    SPListItem myItem = file.Item;

    //取消继承
    if (!myItem.HasUniqueRoleAssignments)
             myItem.BreakRoleInheritance(true);
    //清除权限
    foreach (SPRoleAssignment roleAssignment in myItem.RoleAssignments)
    {
             roleAssignment.RoleDefinitionBindings.RemoveAll();
             roleAssignment.Update();
    }

    SPGroup groupAdmin = web.SiteGroups["项目管理系统管理员"];

    SPRoleDefinition RoleDefContributor = web.RoleDefinitions.GetByType(SPRoleType.Contributor);
    SPRoleDefinition RoleDefAdministrator = web.RoleDefinitions.GetByType(SPRoleType.Administrator);

    SPRoleAssignment RoleAssAdmin = new SPRoleAssignment((SPPrincipal)groupAdmin);
    SPRoleAssignment RoleAssAuthor = new SPRoleAssignment((SPPrincipal)file.Author);

    RoleAssAdmin.RoleDefinitionBindings.Add(RoleDefAdministrator);
    RoleAssAuthor.RoleDefinitionBindings.Add(RoleDefContributor);
    //重新分配权限
    myItem.RoleAssignments.Add(RoleAssAdmin);
    myItem.Update();
    myItem.RoleAssignments.Add(RoleAssAuthor);

    myItem.Update();

     

     

    using(SPWeb oParentWebsite = SPContext.Current.Site.AllWebs["Site_Name"])
    {
             SPWebCollection collWebsites = oParentWebsite.Webs;
             SPUser oUser = oParentWebsite.Users["User_Name"];
             foreach (SPWeb oWebsite in collWebsites)
             {
                      SPRole oRole = oWebsite.Roles["Role_Name"];
                      oRole.RemoveUser(oUser);
                      oWebsite.Dispose();
             }
    }

     
  • 相关阅读:
    Linux系统编程——基于文件描述符的文件操作(2)
    Linux系统编程——基于文件描述符的文件操作(1)
    Linux系统编程——静态库和动态库
    qsort实现结构体数组排序
    C++Primer第五版——习题答案详解(十一)
    C++Primer第五版——习题答案目录
    C++Primer第五版——习题答案详解(九)
    C++Primer第五版——习题答案详解(十)
    JS 创建动态表格练习
    org.dom4j 解析XML
  • 原文地址:https://www.cnblogs.com/liuzhengdao/p/1282020.html
Copyright © 2011-2022 走看看