User.Identity.Name каждый раз имеет значение null с аутентификацией на основе токенов MongoDB - PullRequest
0 голосов
/ 21 октября 2018

Я создал проект, используя веб-API Asp.Net Core 2.1 (MongoDB), и использовал аутентификацию на основе токенов.User.Identity.Name становится нулевым.Также User.Claims показывает «Перечисление не дало результатов».

var tokenHandler = new JwtSecurityTokenHandler();
var key = Encoding.ASCII.GetBytes(config.Value.Secret);
var tokenDescriptor = new SecurityTokenDescriptor
{
    Subject = new ClaimsIdentity(new Claim[]
    {
    new Claim(ClaimTypes.Name, UserDtos.Id.ToString()),
    new Claim(JwtRegisteredClaimNames.Sub, user.Id),
        new Claim(JwtRegisteredClaimNames.UniqueName, user.Id),
        new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
    }),
    Expires = DateTime.UtcNow.AddDays(7),
    SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
};
var token = tokenHandler.CreateToken(tokenDescriptor);
UserDtos.Token = tokenHandler.WriteToken(token);

1 Ответ

0 голосов
/ 25 мая 2019

Работает после добавления вопроса и аудитории.Спасибо

...