Я планирую реализовать классический флажок "помнить-меня" на моем веб-сервере, чтобы разрешить "запомниться" аутентифицированного пользователя, когда он вернется, чтобы посетить мой сайт.
Gmail, Facebook и другие есть такая функция, но я не уверен, насколько это безопасно.
Java Framework, например Spring Безопасность использует "подход к токенам на основе хэш". Токен, который генерируется (с использованием имени пользователя, пароля, expirationTime и privateKey), хранится в токене Client Cookies = 567whatever567. Затем токен повторно используется для повторной аутентификации пользователя в следующий раз, когда он вернется.
Я обеспокоен тем фактом, что даже если процесс входа в систему произошел под соединением https, при каждом последующем HTTP-запросе cookie будет отправлен незашифрованным в сети.
В принципе, каждый может прочитать токен и повторно использовать его для аутентификации.
Я пытаюсь посмотреть, как Gmail или Facebook реализуют эту функциональность. Я вижу некоторые файлы cookie, такие как "присутствие = DJ267619445G09H0L15228675....." в FB, другие в Gmail.
Я не слишком уверен, что они используют какой-то другой трюк для защиты от кого-то, кто пытается олицетворять другого пользователя.
Я попытаюсь изобразить себя, используя что-то вроде cURL, чтобы узнать, использует ли они только определенный токен, чтобы запомнить пользователя,
Если они выглядят так, как большая проблема с безопасностью. Может быть, не facebook (мне все равно), но с Gmail, если вы не установили 'Использовать всегда https, соединение http будет и он отправит ваши незашифрованные токены через Интернет.
Как вы думаете?
Я также заметил, что поля имени пользователя и пароля Facebook отображаются в разделе http (не https). В этом отношении я также задаюсь вопросом: все ли сайты, которые подвергли действию имя пользователя/пароля над http unsecure "от природы". Как только запрос отправляется через http, нет "перенаправления на https", который может исправить проблему "учетные данные, видимые для мира".
Спасибо
Edit:
Мои заботы были обоснованными http://codebutler.com/
Благодаря создателям Firesheep для выделения проблемы!!!