Почему сессия Cook ie в зашифрованном виде. NET Core? - PullRequest
0 голосов
/ 03 марта 2020

SessionMiddleware in. Net Core 3.1 использует IDataProtector для шифрования случайно сгенерированного сеансового ключа.

Сеансовый ключ является ссылкой на коллекцию элементов, хранящихся в кеше, которые доступны через ISession .

Исходный код находится здесь:

Соответствующий бит находится между строками 91 и 96.

Существует множество документов для настройки IDataProtection, но почему ключ сеанса шифруется в первую очередь? Повар ie предназначен для безопасной транспортировки между клиентом и сервером. Фактические данные сеанса, хранящиеся в кэше, не зашифрованы. Шифрование случайно сгенерированного ключа кажется излишним и требует, чтобы разработчики установили IDataProtection для, казалось бы, небольшого значения (если оно вам не нужно для чего-то другого).

1 Ответ

0 голосов
/ 04 марта 2020

Обнаружена проблема, при которой была добавлена ​​IDataProtection.

https://github.com/aspnet/Session/issues/105

Зашифрованный ключ намного длиннее, чем изначально использованный guid, что делает его более безопасным, я полагаю .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...