Автоматический выход из проекта ASP.NET Core 6 через 10–20 минутC#

Место общения программистов C#
Ответить
Anonymous
 Автоматический выход из проекта ASP.NET Core 6 через 10–20 минут

Сообщение Anonymous »

Я просто хочу знать, почему меня забанили за вопросы!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!?????????????????????????????????????????? ?????
Эта проблема существует только на онлайн-хосте, а не на локальном хосте.
На локальном хосте все в порядке, но когда я переключаюсь в онлайн-режим хост, который является хостом Windows с Plesk (я думаю, что это IIS, но я не уверен), пользователь выйдет из системы через 10–20 минут, независимо от того, что я использую — IsPersistent или нет (сохраняйте вход пользователя в систему) ).

Код: Выделить всё

builder.Services.AddAuthentication("MyAuth").AddCookie("MyAuth", options =>
{
options.Cookie.Name = "MyAuth";
options.LoginPath = "/login";
options.LogoutPath = "/logout";
options.ExpireTimeSpan = TimeSpan.FromDays(30);
});

List claims = new()
{
new Claim(ClaimTypes.NameIdentifier, user.ID.ToString()),
};

ClaimsIdentity identity = new(claims, "MyAuth");

ClaimsPrincipal principal = new(identity);

AuthenticationProperties properties = new() { IsPersistent = login.RememberMe };

await HttpContext.SignInAsync("MyAuth", principal, properties);
Я не знаю, как это исправить. Я много искал, и большая часть учебников посвящена ASP.NET Framework, а не ASP.NET Core.
Что я пробовал:
  • добавить параметры.SlidingExpiration = true; в AddAuthentication().AddCookie
  • добавить builder.Services.Configure(o => o.ValidationInterval = TimeSpan.FromHours(10)); в program.cs
  • ExpiresUtc для AuthenticationProperties.
Обновление: я нашел это, но не хочу не знаю, что делать? я не могу найти эти настройки в Plesk.

Таинственный выход из системы на сервере IIS
Несмотря на все эти настройки, вы может возникнуть ситуация, когда пользователи
выходят из системы через несколько минут, например, через 20 минут. Скорее всего, вы не заметите
этого поведения локально при разработке приложения. Это
связано с некоторыми настройками IIS.
Чтобы исправить это поведение, сначала необходимо перейти к дополнительным настройкам
пула приложений. Вы увидите настройку под названием «Тайм-аут простоя
(минуты)», для которой необходимо установить значение 0. Его значение по умолчанию — 20 минут. Это означает
, что если в течение 20 минут не поступает новый запрос, рабочий процесс будет завершен
.
При перезапуске приложения или перезапуске рабочего процесса и при нажатии клавиш
связано с аутентификацией, хранящейся в памяти;
Токены аутентификации на основе файлов cookie будут недействительны, и пользователям потребуется
повторно войти в систему.
Поэтому, чтобы сохранить ключи постоянными, нам нужно установить еще один параметр в
расширенных настройках пула приложений; Для параметра «Загрузить профиль пользователя» должно быть установлено
значение True. Таким образом, ключи будут храниться в папке операционной системы.
(%LOCALAPPDATA%/ASP.NET/DataProtection-Keys)


Подробнее здесь: https://stackoverflow.com/questions/759 ... 20-minutes
Ответить

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

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

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

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

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