У меня есть приложение для интрасети, где все пользовательские операции выполняются вызовами API в удаленной системе (без локальных таблиц). Для нескольких вызовов API требуется пароль пользователя. Я не могу попросить пользователей продолжать повторно вводить пароль, поскольку они используют сайт (иногда через несколько секунд после того, как они только вошли в систему).
Таким образом, не сохраняя свой пароль в базе данных, где я могу безопасно кэшировать пароль на время входа пользователя (примечание: "login", а не "session"). Я попытался сохранить их в состоянии сеанса, но проблема в том, что сеанс длится 20 минут, но токен входа действителен в течение 24 часов.
В идеале я хочу, чтобы он был связан (как-то) напрямую с.AspNet.ApplicationCookie, поэтому логин и кешированный пароль не могут выйти из синхронизации, но он не видит, как можно добавлять пользовательские значения в этот файл cookie. Он может быть зашифрован, если этот файл cookie еще не зашифрован.
EDIT: из-за функции "запомнить меня" логины могут длиться намного дольше, чем значение Session.TimeOut, поэтому я не хочу использовать Session для этого.