Какой смысл в опции Запомнить меня при входе на сайт? Что мешает разработчикам ВСЕГДА помнить пользователя? - PullRequest
1 голос
/ 03 марта 2010

Является ли это просто артефактом старого страха (все еще в некоторых местах) от печенья? Я также хотел бы знать, является ли плохой практикой просто передавать имена пользователей из исходящего электронного письма.

1 Ответ

2 голосов
/ 03 марта 2010

Ничто не мешает веб-приложению всегда помнить пользователя так долго, как он хочет на конкретном компьютере, не запрашивая у пользователя явного разрешения. Однако это имеет последствия для безопасности и конфиденциальности на общих компьютерах.

Представьте, что вы идете в интернет-кафе или библиотеку, садитесь за компьютер с общим доступом и заходите на сайт своего банка (чего в любом случае вам не следует делать из таких мест :-)). Веб-сайт банка пытается быть «умным» и сохраняет cookie с билетом на основе ваших учетных данных. Когда вы закончите, вы закрываете браузер, не выходя из системы. Следующий человек садится, открывает браузер, просматривает историю и заходит на сайт банка. И теперь у них есть магический доступ ко всем вашим деньгам.

Вероятно, это будет последний раз, когда вы используете этот банк для чего-либо.

Обновление: Чтобы ответить на вторую часть вопроса (и комментарий ниже)

Если вы боитесь внедрения URL-адреса, вам, вероятно, не следует указывать имя пользователя в самом URL-адресе электронной почты. Вместо этого сгенерируйте одноразовый токен (например, вы можете использовать односторонний хэш имени пользователя и секрета сайта), который ничего не будет значить для внешнего сайта, но позволит вам извлечь личность пользователя и предварительно заполните поле на странице.

Имейте в виду, что вам не следует указывать в URL-адресе в электронном письме достаточно информации, чтобы при переходе по этой ссылке пользователь проходил аутентификацию на вашем сайте. Вы по-прежнему хотите, чтобы пользователь подтвердил свою личность.

...