У меня есть 2 веб-приложения.
Web_App_A: обрабатывает аутентификацию
Web_App_B: приложение
После пользователь успешно вошел в систему A (User.Identity.IsAuthenticated == true), я создал JWT AccesToken, который передается 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
Пользователь не аутентифицирован, хотя вход в систему прошел успешно ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение