Express -Session: откуда берутся значения connect.sid? - PullRequest
0 голосов
/ 04 марта 2020

Пример, если вы запустите:

console.log('Connect.sid', req.headers.cookie);

Результат connect.sid значение:

connect.sid=s%3A04x6YVZX68nRrhakd3SWuIMakDhuGptO.kyBVHe0HDI4pW1JeOl0xEopRYgQ51ZVlAKdfui7ii18

И если вы зарегистрируете req.sessionID, результат будет следующим:

04x6YVZX68nRrhakd3SWuIMakDhuGptO

На данный момент ясно, что первая часть сеанса cook ie (connect.sid) - это sessionId. То, что каждый может построить с помощью функции genid, которую нам предоставляет express.

Чтобы быть более понятным, у меня есть несколько правил WAF, некоторые из этих правил предназначены для проверки SQL Атаки или что-то еще как это. Иногда (довольно далеко) мой брандмауэр веб-приложения (In Azure) срабатывает, потому что совпадает с шаблоном в connect.sid cook ie.

Мне нужно обработать всю кухню ie, но Я смогу взаимодействовать только с первым разделом значения cook ie (sessionID). И вот здесь у меня есть несколько вопросов:

  • Что это за второе значение?
  • Как с этим справиться?
  • Можно ли удалить его и создать новый один, если шаблон соответствует?
  • У меня много проблем с этим? Лучше только добавить исключение в WAF?

На всякий случай, я читал этот очень похожий вопрос "express -сессия - разница между идентификатором сессии и подключением. sid?", но мне нужно больше подробностей об этом.

...