JsonWebTokenHandler.ReplaceTokenHeader(JsonWebToken, String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea un nuevo JsonWebToken reemplazando el encabezado de un existente JsonWebToken, reutilizando su carga y firma ya analizadas.
public virtual Microsoft.IdentityModel.JsonWebTokens.JsonWebToken ReplaceTokenHeader(Microsoft.IdentityModel.JsonWebTokens.JsonWebToken jsonWebToken, string encodedHeader);
abstract member ReplaceTokenHeader : Microsoft.IdentityModel.JsonWebTokens.JsonWebToken * string -> Microsoft.IdentityModel.JsonWebTokens.JsonWebToken
override this.ReplaceTokenHeader : Microsoft.IdentityModel.JsonWebTokens.JsonWebToken * string -> Microsoft.IdentityModel.JsonWebTokens.JsonWebToken
Public Overridable Function ReplaceTokenHeader (jsonWebToken As JsonWebToken, encodedHeader As String) As JsonWebToken
Parámetros
- jsonWebToken
- JsonWebToken
JsonWebToken Firmado (JWS) cuya carga y firma se reutilizan.
- encodedHeader
- String
Encabezado Base64UrlEncoded que reemplaza el encabezado de jsonWebToken.
Devoluciones
Formado JsonWebToken como "encodedHeader.EncodedPayload.EncodedSignature".
Excepciones
Se produce si encodedHeader es null o está vacío.
Se produce si jsonWebToken es un token cifrado (JWE), ya que su carga no se puede reutilizar.
Comentarios
Se trata de una transformación intencionada para reescrituras solo de encabezado (por ejemplo, aplicar hash a un token reenviado protegido nonce). Solo se descodifica y analiza el encabezado de reemplazo; la carga se reutiliza sin jsonWebToken volver a analizar.
La firma de jsonWebToken se reutiliza textualmente y NO se vuelve a calcular. Por lo tanto, el token resultante solo se valida cuando encodedHeader reconstruye el encabezado sobre el que se calculó la firma original; si se proporciona un encabezado arbitrario, se genera un token cuya firma producirá un error de validación.
El token devuelto NO se valida. Use ValidateToken(String, TokenValidationParameters) o ValidateTokenAsync(String, TokenValidationParameters) para asegurarse de que el token es aceptable.