语言

JwtSecurityTokenHandler 类

定义

专为 SecurityTokenHandler 创建和验证 Json Web 令牌而设计。 请参阅: https://datatracker.ietf.org/doc/html/rfc7519http://www.rfc-editor.org/info/rfc7515

public class JwtSecurityTokenHandler : Microsoft.IdentityModel.Tokens.SecurityTokenHandler
type JwtSecurityTokenHandler = class
    inherit SecurityTokenHandler
Public Class JwtSecurityTokenHandler
Inherits SecurityTokenHandler
继承
JwtSecurityTokenHandler

构造函数

名称 说明
JwtSecurityTokenHandler()

初始化 JwtSecurityTokenHandler 类的新实例。

字段

名称 说明
DefaultInboundClaimFilter

默认声明类型筛选器列表。

DefaultInboundClaimTypeMap

入站声明的默认声明类型映射。

DefaultMapInboundClaims

确定是否使用 InboundClaimTypeMap 的标志的默认值。

DefaultOutboundAlgorithmMap

默认 JwtHeader 算法映射

DefaultOutboundClaimTypeMap

出站声明的默认声明类型映射。

属性

名称 说明
CanValidateToken

返回一个值,该值指示此处理程序是否可以验证 。SecurityToken

CanWriteToken

获取一个 SecurityToken值,该值指示此实例是否可以写入 。

InboundClaimFilter

获取或设置 ISet<T> 在填充 ClaimsIdentity 声明时 JwtSecurityToken筛选声明的用法。 验证后,不会向 <a0/a0/ a1/ 中添加具有此类型类型的声明。

默认值为 ClaimTypeMapping.InboundClaimFilter。

InboundClaimTypeMap

获取或设置InboundClaimTypeMap在验证 a Type时为提取的ClaimsPrincipal声明设置JwtSecurityToken时使用的项。

使用此映射进行转换后,该 Type 属性将设置为 JSON 声明“name”。

默认值为 ClaimTypeMapping.InboundClaimTypeMap。

JsonClaimTypeProperty

获取或设置将值序列化为 JSON 时Claims识别的 Properties .Net 类型的属性名称。

有关详细信息,请参阅 <seealso cref=“P:System.IdentityModel.Tokens.JwtSecurityTokenHandler.InboundClaimTypeMap”></seealso> 。

MapInboundClaims

获取或设置在 MapInboundClaims 确定是否映射验证 a JwtSecurityToken时提取的声明类型时使用的属性。

如果此值设置为 true, Type 则使用此映射进行转换后,将设置为 JSON 声明“name”。 否则,不会发生映射。

默认值为真。

MaximumTokenSizeInBytes

获取和设置将处理的最大令牌大小(以字节为单位)。

(继承自 TokenHandler)
OutboundAlgorithmMap

获取传递给构造函数的 JwtHeader 出站算法映射。

OutboundClaimTypeMap

获取或设置OutboundClaimTypeMapClaim(s) 创建JwtSecurityToken时使用的项。

使用此映射进行转换后,JSON 声明“name”值设置为 Type

默认值为 ClaimTypeMapping.OutboundClaimTypeMap

SetDefaultTimesOnTokenCreation

获取或设置一个布尔值,用于控制令牌创建是否将设置默认的“exp”、“nbf”和“iat”(如果未指定)。

(继承自 TokenHandler)
ShortClaimTypeProperty

获取或设置在创建 时发生映射时Properties,将包含原始 JSON 声明“name”的属性名称Claim

有关详细信息,请参阅 <seealso cref=“P:System.IdentityModel.Tokens.JwtSecurityTokenHandler.InboundClaimTypeMap”></seealso> 。

TokenLifetimeInMinutes

获取或设置令牌生存期(以分钟为单位)。

(继承自 TokenHandler)
TokenType

获取 JwtSecurityToken的类型。

方法

名称 说明
CanReadToken(String)

确定字符串是否是格式良好的 Json Web 令牌 (JWT)。

请参阅:https://datatracker.ietf.org/doc/html/rfc7519

CanReadToken(XmlReader)

指示 XmlReader 是否放置在可读取的元素上。

(继承自 SecurityTokenHandler)
CreateActorValue(ClaimsIdentity)

为执行组件声明创建“value”: { actort, 'value' }

CreateClaimsIdentity(JwtSecurityToken, String, TokenValidationParameters)

从 . 创建一个 ClaimsIdentityJwtSecurityToken

CreateEncodedJwt(SecurityTokenDescriptor)

返回 Json Web 令牌 (JWT)。

CreateEncodedJwt(String, String, ClaimsIdentity, Nullable<DateTime>, Nullable<DateTime>, Nullable<DateTime>, SigningCredentials, EncryptingCredentials, IDictionary<String,Object>)

使用“压缩序列化格式”创建 JWT。

CreateEncodedJwt(String, String, ClaimsIdentity, Nullable<DateTime>, Nullable<DateTime>, Nullable<DateTime>, SigningCredentials, EncryptingCredentials)

使用“压缩序列化格式”创建 JWT。

CreateEncodedJwt(String, String, ClaimsIdentity, Nullable<DateTime>, Nullable<DateTime>, Nullable<DateTime>, SigningCredentials)

使用“压缩序列化格式”创建 JWT。

CreateJwtSecurityToken(SecurityTokenDescriptor)

创建 Json Web 令牌(JWT)。

CreateJwtSecurityToken(String, String, ClaimsIdentity, Nullable<DateTime>, Nullable<DateTime>, Nullable<DateTime>, SigningCredentials, EncryptingCredentials, IDictionary<String,Object>)

创建 JwtSecurityToken

CreateJwtSecurityToken(String, String, ClaimsIdentity, Nullable<DateTime>, Nullable<DateTime>, Nullable<DateTime>, SigningCredentials, EncryptingCredentials)

创建 JwtSecurityToken

CreateJwtSecurityToken(String, String, ClaimsIdentity, Nullable<DateTime>, Nullable<DateTime>, Nullable<DateTime>, SigningCredentials)

创建 JwtSecurityToken

CreateSecurityTokenReference(SecurityToken, Boolean)

返回 SecurityKeyIdentifierClause

(继承自 SecurityTokenHandler)
CreateToken(SecurityTokenDescriptor)

创建 Json Web 令牌(JWT)。

DecryptToken(JwtSecurityToken, TokenValidationParameters)

解密 JWE 并返回明文

ReadJwtToken(String)

将字符串转换为 . 的 JwtSecurityToken实例。

ReadToken(String)

将字符串转换为 . 的 JwtSecurityToken实例。

ReadToken(XmlReader, TokenValidationParameters)

使用提供的 TokenValidationParameters反序列化令牌。

ReadToken(XmlReader)

获取安全令牌。

(继承自 SecurityTokenHandler)
ResolveIssuerSigningKey(String, JwtSecurityToken, TokenValidationParameters)

返回验证令牌签名时要使用的值 SecurityKey

ResolveTokenDecryptionKey(String, JwtSecurityToken, TokenValidationParameters)

返回一个在解密 JWE 时要使用的值 SecurityKey

ValidateAudience(IEnumerable<String>, JwtSecurityToken, TokenValidationParameters)

确定在某个 JwtSecurityToken 对象中找到的受众是否有效。

ValidateIssuer(String, JwtSecurityToken, TokenValidationParameters)

确定在某个 JwtSecurityToken 文件中找到的颁发者是否有效。

ValidateIssuerSecurityKey(SecurityKey, JwtSecurityToken, TokenValidationParameters)

验证 SigningKey 是否为预期值。

ValidateLifetime(Nullable<DateTime>, Nullable<DateTime>, JwtSecurityToken, TokenValidationParameters)

验证 . 的 JwtSecurityToken生存期。

ValidateSignature(String, TokenValidationParameters)

验证签名(如果找到或必需)是否有效。

ValidateToken(String, TokenValidationParameters, SecurityToken)

读取并验证编码为压缩序列化格式的 JWS 或 JWE 的“JSON Web 令牌”(JWT)。

ValidateToken(XmlReader, TokenValidationParameters, SecurityToken)

使用 xmlReader 读取和验证令牌 TokenValidationParameters

(继承自 SecurityTokenHandler)
ValidateTokenAsync(SecurityToken, TokenValidationParameters)

验证令牌。 在验证失败时,不会引发异常;相反,将在返回的 TokenValidationResult.Exception 属性中设置异常。 调用方应始终检查 TokenValidationResult.IsValid 属性以验证结果的有效性。

(继承自 TokenHandler)
ValidateTokenAsync(String, TokenValidationParameters)

验证令牌。 在验证失败时,不会引发异常;相反,将在返回的 TokenValidationResult.Exception 属性中设置异常。 调用方应始终检查 TokenValidationResult.IsValid 属性以验证结果的有效性。

ValidateTokenPayload(JwtSecurityToken, TokenValidationParameters)

验证 . 的 JwtSecurityTokenJSON 有效负载。

ValidateTokenReplay(Nullable<DateTime>, String, TokenValidationParameters)

确定是否已验证 a JwtSecurityToken

WriteToken(SecurityToken)

以压缩序列化格式将 A JwtSecurityToken 序列化为 JWT。

WriteToken(XmlWriter, SecurityToken)

序列化为 XML,该实例处理的类型标记。

适用于