热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SharePoint跟权限有关的ObjectModelClass

SPRoleDefinition:定义了一个单个的角色,包括一个名字,描述,属性,和一系列的权限.SPRoleAssignment:为一个用户或用户组定义了该用户或组所有的角色分配

SPRoleDefinition:

定义了一个单个的角色, 包括一个名字, 描述, 属性, 和一系列的权限.

 

SPRoleAssignment:

为一个用户或用户组定义了该用户或组所有的角色分配.

 

SPRoleDefinitionBindingCollection:

定义了绑定在一个role assignment对象上的一个或多个角色的定义.

 

SPPrincipal:

代表着一个可以被赋予权限的用户或组.

 

这四个对象之间的关系可以用下面的代码来说明

using (SPSite oSite = new SPSite("http://localhost/"))
{using (SPWeb oWeb = oSite.OpenWeb()){SPRoleDefinitionCollection oWebRoleDefinitions = oWeb.RoleDefinitions;SPRoleAssignmentCollection oWebRoleAssignments = oWeb.RoleAssignments;if (!oWeb.HasUniqueRoleAssignments){Console.WriteLine("This web has inherited permission from its parent.");}else{foreach (SPRoleAssignment oRA in oWebRoleAssignments){SPPrincipal oPrincipal = oRoleass.Member;Console.WriteLine(oPrincipal.Name);foreach (SPRoleDefinition oRD in oRA.RoleDefinitionBindings){Console.WriteLine(" " + oRD.Name);Console.WriteLine(" " + oRD.Order);Console.WriteLine(" " + oRD.Hidden);Console.WriteLine(" " + oRD.Type);}}} SPRoleAssignment oNewRoleAssignment = new SPRoleAssignment(("yunzhang\\test1","test1@yunzhang.com","test1 display", "Notes test1");SPRoleDefinitionBindingCollection oNewRoleDefinitionBindings = oNewRoleAssignment.RoleDefinitionBindings;oNewRoleDefinitionBindings.Add(oWebRoleDefinitions["Role_Definition_Name"]);oWebRoleAssignments.Add(oNewRoleAssignment);}
}

 

SPUser:

代表着一个用户.

 

SPUserInfo:

这是一个结构,而不是一个类. 定义了一个当前并未被注册到内容数据库中的用户信息.

 

SPGroup:

代表这一个用户组.

 

过期对象

=========

SPRole:

代表一个站点用户组, 它存在于WSS 2.0中, 现在这个类还存在是为了向后兼容(现在的版本可以支持以前的版本数据). 现在应该使用SPRoleDefinition和SPRoleAssignment这两个类了.

 

SPPermission:

代表着可以赋予用户或组的权限. 与SPRole一样, 它的存在是为了向后兼容.

 

SPRights:

该API已经过期, 不再使用.

 

参考资料

http://msdn.microsoft.com/en-us/library/ms469194.aspx



推荐阅读
author-avatar
幸福taishanvv_660
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有