请注意:此 API 现在已过时。
Use the new SPRoleDefinition and SPRoleAssignment classes instead, to define roles and to assign users to them. For more information, see Changes in the Authorization Object Model. (In Windows SharePoint Services 2.0, SPRole represented the permission assigned to a user or group for a list or a site and is maintained for backward compatibility.)
继承层次结构
System.Object
Microsoft.SharePoint.SPPermission
命名空间: Microsoft.SharePoint
程序集: Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)
语法
声明
<ObsoleteAttribute("Use the SPRoleAssignment class instead")> _
Public Class SPPermission
用法
Dim instance As SPPermission
[ObsoleteAttribute("Use the SPRoleAssignment class instead")]
public class SPPermission
备注
使用SPList或SPWeb类的Permissions属性可返回SPPermissionCollection对象,表示列表或网站的权限的集合。使用索引器从集合中返回单个权限。例如,如果集合分配给名为collPermissions的变量中,使用 C# 中的collPermissions[index]或collPermissions(index)在 Visual Basic 中,其中index是集合中的权限的索引号,或者用户或组具有对列表或网站的权限的SPMember对象。
权限由右或SPRights枚举由指定的权限的组合。PermissionMask属性包含分配给用户或组的权限的组。
示例
下面的代码示例使用SPPermission类的PermissionMask属性来修改分配给单个用户的权限。
Dim siteCollection As SPSite = SPContext.Current.Site
Dim site As SPWeb = siteCollection.AllWebs("Site_Name")
Dim list As SPList = site.Lists("List_Name")
Dim perms As SPPermissionCollection = list.Permissions
Dim users As SPUserCollection = site.Users
Dim member As SPMember = users("User_Name")
list.Permissions(member).PermissionMask =
SPRights.AddListItems Or SPRights.EditListItems
SPSite oSiteCollection = SPContext.Current.Site;
using(SPWeb oWebsite = oSiteCollection.AllWebs["Site_Name"])
{
SPList oList = oWebsite.Lists["List_Name"];
SPPermissionCollection collPermissions = oList.Permissions;
SPUserCollection collUsers = oWebsite.Users;
SPMember oMember = collUsers["User_Name"];
oList.Permissions[oMember].PermissionMask =
SPRights.AddListItems | SPRights.EditListItems;
}
备注
Certain objects implement the IDisposable interface, and you must avoid retaining these objects in memory after they are no longer needed. For information about good coding practices, see Disposing Objects.
线程安全性
该类型的任何公共 静态 (已共享 在 Visual Basic 中) 成员都是线程安全的。不保证任何实例成员都是线程安全的。