Пользователь не аутентифицирован, хотя вход в систему прошел успешноC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Пользователь не аутентифицирован, хотя вход в систему прошел успешно

Сообщение Anonymous »

У меня есть два веб-приложения:
  • Web_App_A: обрабатывает аутентификацию
  • Web_App_B : само приложение.
После того, как пользователь успешно войдет в систему A (User.Identity.IsAuthenticated == true), я создаю токен доступа JWT, который передается B.
B получает JWT и может его прочитать, поэтому:
var UserFullName = claimsPrincipal.FindFirst("UserFullName")?.Value;

показывает правильное значение.
Проблема в том, что когда я проверяю статус аутентификации в B,
User.Identity.IsAuthenticated == false.

Оба имеют файл Program.cs, где эта часть одинакова:
// JWT Configuration
var jwtKey = builder.Configuration["Jwt:Key"]; // Read from appsettings
var jwtValidIssuer = builder.Configuration["Jwt:ValidIssuer"]; // Read from appsettings
var jwtValidAudience = builder.Configuration["Jwt:ValidAudience"]; // Read from appsettings

builder.Services.AddAuthentication(options =>
{
options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(options =>
{
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidIssuer = jwtValidIssuer,
ValidateAudience = true,
ValidAudience = jwtValidAudience,
ValidateLifetime = true,
ValidateIssuerSigningKey = true,
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtKey)),
RoleClaimType = ClaimTypes.Role // Parse roles correctly from token
};
});


Подробнее здесь: https://stackoverflow.com/questions/790 ... -succesful
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»