class ClaimsPrincipal
cangjie
public class ClaimsPrincipal <: Serializable<ClaimsPrincipal>功能:表示包含多个声明标识的主体。
父类型:
- Serializable<ClaimsPrincipal>
成员概览
| 成员 | 功能 |
|---|---|
| init(Array<ClaimsIdentity>) | 使用声明标识数组创建主体。 |
| prop claims | 返回主体聚合后的全部声明。 |
| prop identity | 返回当前主体的主声明标识。 |
| prop identities | 返回主体包含的全部声明标识。 |
| func addIdentity(ClaimsIdentity) | 添加一个声明标识。 |
| func addIdentities(Collection<ClaimsIdentity>) | 批量添加声明标识。 |
| func hasClaim((Claim) -> Bool) | 检查主体是否存在满足条件的声明。 |
| func hasClaim(String, String) | 检查主体是否存在指定类型和值的声明。 |
| func findAll((Claim) -> Bool) | 查找满足条件的全部声明。 |
| func findFirst((Claim) -> Bool) | 查找首个满足条件的声明。 |
| func findFirstValue((Claim) -> Bool) | 查找首个满足条件声明的值。 |
| func findAll(String) | 按声明类型查找全部声明。 |
| func findFirst(String) | 按声明类型查找首条声明。 |
| func findFirstValue(String) | 按声明类型查找首个声明值。 |
| func isInRole(String) | 检查主体是否包含指定角色声明。 |
| func clone() | 克隆当前主体。 |
| func setPrimaryIdentitySelector((identities: Collection<ClaimsIdentity>) -> ?ClaimsIdentity) | 设置主声明标识选择器。 |
| func serialize() | 将当前主体序列化为数据模型。 |
| func deserialize(DataModel) | 从数据模型反序列化主体。 |
init(Array<ClaimsIdentity>)
cangjie
public init(claimsIdenties: Array<ClaimsIdentity>)功能:使用声明标识数组创建主体。
参数:
- claimsIdenties: Array<ClaimsIdentity> - 主体包含的声明标识数组。
prop claims
cangjie
public prop claims: Collection<Claim>功能:返回主体聚合后的全部声明。
类型:Collection<Claim>
prop identity
cangjie
public prop identity: ?ClaimsIdentity功能:返回当前主体的主声明标识。
类型:?ClaimsIdentity
prop identities
cangjie
public prop identities: Collection<ClaimsIdentity>功能:返回主体包含的全部声明标识。
类型:Collection<ClaimsIdentity>
func addIdentity(ClaimsIdentity)
cangjie
public func addIdentity(claimsIdentity: ClaimsIdentity): Unit功能:添加一个声明标识。
参数:
- claimsIdentity: ClaimsIdentity - 需要添加的声明标识。
返回值:
Unit
func addIdentities(Collection<ClaimsIdentity>)
cangjie
public func addIdentities(claimsIdentities: Collection<ClaimsIdentity>): Unit功能:批量添加声明标识。
参数:
- claimsIdentities: Collection<ClaimsIdentity> - 需要添加的声明标识集合。
返回值:
Unit
func hasClaim((Claim) -> Bool)
cangjie
public func hasClaim(predicate: (Claim) -> Bool): Bool功能:检查主体是否存在满足条件的声明。
参数:
- predicate: (Claim) -> Bool - 声明筛选条件。
返回值:
Bool- 如果存在匹配声明则返回true。
func hasClaim(String, String)
cangjie
public func hasClaim(`type`: String, value: String): Bool功能:检查主体是否存在指定类型和值的声明。
参数:
type:String- value:
String- 声明值。
返回值:
Bool- 如果存在匹配声明则返回true。
func findAll((Claim) -> Bool)
cangjie
public func findAll(selector: (Claim) -> Bool): Array<Claim>功能:查找满足条件的全部声明。
参数:
- selector: (Claim) -> Bool - 声明筛选条件。
返回值:
- Array<Claim> - 返回匹配的声明数组。
func findFirst((Claim) -> Bool)
cangjie
public func findFirst(selector: (Claim) -> Bool): ?Claim功能:查找首个满足条件的声明。
参数:
- selector: (Claim) -> Bool - 声明筛选条件。
返回值:
- ?Claim - 返回首个匹配的声明;不存在时返回空。
func findFirstValue((Claim) -> Bool)
cangjie
public func findFirstValue(selector: (Claim) -> Bool): ?String功能:查找首个满足条件声明的值。
参数:
- selector: (Claim) -> Bool - 声明筛选条件。
返回值:
?String- 返回首个匹配声明的值;不存在时返回空。
func findAll(String)
cangjie
public func findAll(`type`: String): Array<Claim>功能:按声明类型查找全部声明。
参数:
type:String
返回值:
- Array<Claim> - 返回匹配的声明数组。
func findFirst(String)
cangjie
public func findFirst(`type`: String): ?Claim功能:按声明类型查找首条声明。
参数:
type:String
返回值:
- ?Claim - 返回首个匹配的声明;不存在时返回空。
func findFirstValue(String)
cangjie
public func findFirstValue(`type`: String): ?String功能:按声明类型查找首个声明值。
参数:
type:String
返回值:
?String- 返回首个匹配声明的值;不存在时返回空。
func isInRole(String)
cangjie
public func isInRole(role: String): Bool功能:检查主体是否包含指定角色声明。
参数:
- role:
String- 角色名称。
返回值:
Bool- 如果主体拥有该角色则返回true。
func clone()
cangjie
public func clone(): ClaimsPrincipal功能:克隆当前主体。
返回值:
- ClaimsPrincipal - 返回克隆后的主体。
func setPrimaryIdentitySelector((identities: Collection<ClaimsIdentity>) -> ?ClaimsIdentity)
cangjie
public static func setPrimaryIdentitySelector(selector: (identities: Collection<ClaimsIdentity>) -> ?ClaimsIdentity): Unit功能:设置主声明标识选择器。
参数:
- selector: (identities: Collection<ClaimsIdentity>) -> ?ClaimsIdentity - 用于选择主声明标识的委托。
返回值:
Unit
func serialize()
cangjie
public func serialize(): DataModelStruct功能:将当前主体序列化为数据模型。
返回值:
DataModelStruct- 返回主体对应的数据模型结构。
func deserialize(DataModel)
cangjie
public static func deserialize(dm: DataModel): ClaimsPrincipal功能:从数据模型反序列化主体。
参数:
- dm:
DataModel- 主体对应的数据模型。
返回值:
- ClaimsPrincipal - 返回反序列化后的主体。
异常:
DataModelException- 当数据模型不是结构类型时抛出。