SPRoleAssignment 类

当前对象上定义的用户或组的角色分配。

继承层次结构

System.Object
  Microsoft.SharePoint.SPRoleAssignment

命名空间:  Microsoft.SharePoint
程序集:  Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)

语法

声明
Public NotInheritable Class SPRoleAssignment
用法
Dim instance As SPRoleAssignment
public sealed class SPRoleAssignment

备注

要授予用户或组对安全内容的权限,创建角色分配对象、 设置用户或组的角色分配、 添加适当的角色定义,以及将对象添加到角色分配安全对象的集合。

使用ISecurableObject接口,则SPListSPListItemSPWeb类的RoleAssignments属性可返回给定对象的角色分配的集合。

使用索引器从集合中返回的单个项。例如,如果集合分配给名为collRoleAssignments的变量中,使用 C# 中的collRoleAssignments[index]或collRoleAssignments(index)在 Visual Basic 中,其中index是集合中项目的索引号,或者一个字符串,包含角色定义的名称。

示例

下面的代码示例创建新的角色分配的用户,将新的角色定义添加到的绑定的角色定义的角色分配,然后将新的角色分配添加到网站的角色分配的集合。

using(SPWeb oWebsite = SPContext.Current.Site.AllWebs["Subsite_Name"])
{
    SPRoleDefinitionCollection collRoleDefinitions = oWebsite.RoleDefinitions;
    SPRoleAssignmentCollection collRoleAssignments = oWebsite.RoleAssignments;

    SPRoleAssignment oRoleAssignment = new 
SPRoleAssignment("DOMAIN\\User_Alias","User_Alias@Somewhere.com","Displ
ay_Name","Notes");

    SPRoleDefinitionBindingCollection collRoleDefinitionBindings = oRoleAssignment.RoleDefinitionBindings;

    collRoleDefinitionBindings.Add(collRoleDefinitions["Role_Definition_Name"]);

    collRoleAssignments.Add(oRoleAssignment);
}
Using oWebsite As SPWeb = SPContext.Current.Site.AllWebs("Subsite_Name")
    Dim collRoleDefinitions As SPRoleDefinitionCollection = oWebsite.RoleDefinitions
    Dim collRoleAssignments As SPRoleAssignmentCollection = oWebsite.RoleAssignments

    Dim oRoleAssignment As New SPRoleAssignment("DOMAIN\User_Alias","User_Alias@Somewhere.com","Displ ay_Name","Notes")

    Dim collRoleDefinitionBindings As SPRoleDefinitionBindingCollection = oRoleAssignment.RoleDefinitionBindings

    collRoleDefinitionBindings.Add(collRoleDefinitions("Role_Definition_Name"))

    collRoleAssignments.Add(oRoleAssignment)
End Using

备注

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 中) 成员都是线程安全的。不保证任何实例成员都是线程安全的。

另请参阅

引用

SPRoleAssignment 成员

Microsoft.SharePoint 命名空间