0

Имеется ли решение для использования HttpSessionState для хранения токена?Использовать HttpSessionState для хранения токенов/претензий

Я знаю, что мы можем включить сеанс, чтобы сделать аутентификации печенья меньше:

FederatedAuthentication.SessionAuthenticationModule.IsSessionMode = true; 

Из того, что я понял, с реализацией по умолчанию, маркер сохраняется в памяти. http://www.cloudidentity.com/blog/2010/05/26/YOUR-FEDAUTH-COOKIES-ON-A-DIET-ISSESSIONMODE-TRUE/

HttpSession не используется, даже если установлен пользовательский поставщик.

Thinktecture IdentityModel позволяет нам использовать собственный репозиторий токенов на implementing ITokenCacheRepository, но для него требуется внешнее хранилище, использование сеанса может быть плохим (expiration, scope ...).

Почему TokenCache по умолчанию использует решение в памяти вместо поставщика Host Session? Есть ли простой и безопасный способ использования состояния сеанса хоста?

ответ

0

Хотя я не пытался хранить токен в сеансе, я применил ITokenCacheRepository от Thinktecture.IdentityModel, используя кеш Redis.

код доступен здесь: https://github.com/guillaume-fr/RedisTokenCache

Это может помочь кто-нибудь ищет способ хранения лексем на стороне сервера в среде Cloud/WebFarm. Я не буду принимать свой ответ, поскольку он не говорит, как мы можем использовать сеанс или почему мы не могли.