RolePrincipal 类

定义

表示当前 HTTP 请求的安全信息,包括角色成员资格。 此类不能被继承。

public ref class RolePrincipal : System::Runtime::Serialization::ISerializable, System::Security::Principal::IPrincipal
public ref class RolePrincipal : System::Security::Claims::ClaimsPrincipal, System::Runtime::Serialization::ISerializable
[System.Serializable]
public class RolePrincipal : System.Runtime.Serialization.ISerializable, System.Security.Principal.IPrincipal
[System.Serializable]
public class RolePrincipal : System.Security.Claims.ClaimsPrincipal, System.Runtime.Serialization.ISerializable
[<System.Serializable>]
type RolePrincipal = class
    interface IPrincipal
    interface ISerializable
[<System.Serializable>]
type RolePrincipal = class
    inherit ClaimsPrincipal
    interface ISerializable
Public Class RolePrincipal
Implements IPrincipal, ISerializable
Public Class RolePrincipal
Inherits ClaimsPrincipal
Implements ISerializable
继承
RolePrincipal
继承
RolePrincipal
属性
实现

注解

对象 RolePrincipal 实现 IPrincipal 接口并表示 HTTP 请求的当前安全上下文。

启用角色管理 (看到Roles) 时RoleManagerModule, 会将 对象User分配给 RolePrincipalCurrentHttpContext属性。

RolePrincipal 公开当前 HTTP 请求的安全标识,并另外执行角色成员身份检查。 如果 CacheRolesInCookietrue,则 RolePrincipal 对象管理缓存的角色列表,并首先在缓存列表中查找当前用户的角色成员身份,然后查找角色 Provider。 如果 CacheRolesInCookiefalse,则 RolePrincipal 对象始终使用角色提供程序查找角色成员身份。

对象RolePrincipal基于 CookieProtectionValue对 标识的 Cookie CookieName 中缓存的角色信息进行加密和解密。

构造函数

RolePrincipal(IIdentity)

为指定的 identity 实例化一个 RolePrincipal 对象。

RolePrincipal(IIdentity, String)

利用指定的 identity 中的角色信息为指定的 encryptedTicket 实例化 RolePrincipal 对象。

RolePrincipal(SerializationInfo, StreamingContext)

使用指定 RolePrincipal 对象中包含的信息并使用指定的流上下文初始化 SerializationInfo 类的新实例。

RolePrincipal(String, IIdentity)

使用指定的 identity 为指定的 providerName 实例化 RolePrincipal 对象。

RolePrincipal(String, IIdentity, String)

使用指定的 identity 和指定的 providerName 中的角色信息,为指定的 encryptedTicket 实例化 RolePrincipal 对象。

属性

CachedListChanged

获取一个值,该值指示是否修改了利用 RolePrincipal 对象缓存的角色名称的列表。

Claims

获取包含所有声明的集合,这些声明来自于与此声明主体关联的所有声明标识符。

(继承自 ClaimsPrincipal)
CookiePath

获取缓存角色名称的 Cookie 的路径。

CustomSerializationData

包含派生类型提供的任何其他数据。 通常在调用 WriteTo(BinaryWriter, Byte[]) 时设置。

(继承自 ClaimsPrincipal)
Expired

获取一个值,它指示角色 Cookie 是否已过期。

ExpireDate

获取角色 Cookie 将过期的日期和时间。

Identities

获取一个集合,该集合包含与此声明主体关联的所有声明标识。

(继承自 ClaimsPrincipal)
Identity

为当前 HTTP 请求获取安全标识。

IsRoleListCached

获取一个值,该值指示用户的角色列表是否已缓存在 Cookie 中。

IssueDate

获取发布角色 Cookie 的日期和时间。

ProviderName

获取存储和检索用户角色信息的角色提供程序的名称。

Version

获取角色 Cookie 的版本号。

方法

AddIdentities(IEnumerable<ClaimsIdentity>)

将指定的声明标识添加到此声明主体。

(继承自 ClaimsPrincipal)
AddIdentity(ClaimsIdentity)

将指定的声明标识添加到此声明主体。

(继承自 ClaimsPrincipal)
Clone()

返回此实例的副本。

(继承自 ClaimsPrincipal)
CreateClaimsIdentity(BinaryReader)

创建新的声明标识。

(继承自 ClaimsPrincipal)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
FindAll(Predicate<Claim>)

检索所有与指定谓词相匹配的声明。

(继承自 ClaimsPrincipal)
FindAll(String)

检索所有或具有指定的声明类型的声明。

(继承自 ClaimsPrincipal)
FindFirst(Predicate<Claim>)

检所由指定谓词匹配的第一个声明。

(继承自 ClaimsPrincipal)
FindFirst(String)

检索有指定声明类型的第一个声明。

(继承自 ClaimsPrincipal)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetObjectData(SerializationInfo, StreamingContext)

使用数据填充 SerializationInfo 对象,该数据是使用指定的流上下文序列化目标对象所必需的。

GetRoles()

获取 RolePrincipal 是其成员的角色的列表。

GetType()

获取当前实例的 Type

(继承自 Object)
HasClaim(Predicate<Claim>)

确定与此声明主体相关联的任何声明标识是否包含由指定的谓词匹配的声明。

(继承自 ClaimsPrincipal)
HasClaim(String, String)

确定与此声明主体相关联的任何声明标识是否包含具有指定声明类型和值的声明。

(继承自 ClaimsPrincipal)
IsInRole(String)

获取一个值,该值指示由 RolePrincipal 表示的用户是否扮演指定的角色。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
SetDirty()

将缓存的角色列表标记为已被更改。

ToEncryptedTicket()

返回利用 RolePrincipal 对象缓存并根据 CookieProtectionValue 加密的角色信息。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
WriteTo(BinaryWriter)

使用 BinaryWriter 序列化。

(继承自 ClaimsPrincipal)
WriteTo(BinaryWriter, Byte[])

使用 BinaryWriter 序列化。

(继承自 ClaimsPrincipal)

显式接口实现

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

有关此成员的说明,请参见 GetObjectData(Object, SerializationInfo, StreamingContext)

适用于

另请参阅