Привет! Я пытаюсь декодировать токен с помощью C # framework 4.6.1, используя пакет nuget System.IdentityModel.Tokens.Jwt версии 4.0.2.206221351, но мне не удается заставить это работать.
Для версии5.4 это код, который я использовал:
var token = "";
var key = Encoding.ASCII.GetBytes("Key");
var tokenHandler = new JwtSecurityTokenHandler();
var jwtToken = (JwtSecurityToken)tokenHandler.ReadToken(token);
if (jwtToken == null)
{
return null;
}
IdentityModelEventSource.ShowPII = true; // --> Error Here
var tokenParameters = new TokenValidationParameters()
{
RequireExpirationTime = false,
ValidateIssuer = false,
ValidateAudience = false,
IssuerSigningKey = new SymmetricSecurityKey(key), // --> Error Here
RequireSignedTokens = true
};
SecurityToken securityToken;
var principle = tokenHandler.ValidateToken(token, tokenParameters, out securityToken);
if (principle == null)
{
return null;
}
ClaimsIdentity identity = (ClaimsIdentity)principle.Identity;
Ошибки:
CS0103 Имя 'IdentityModelEventSource' не существует в текущем контексте
CS0144 Невозможно создать экземплярабстрактный класс или интерфейс 'SymmetricSecurityKey'
Чего мне не хватает?это по-другому?