Как безопасно настроить проверку подлинности на основе файлов cookie в классическом ASP? - PullRequest
1 голос
/ 04 августа 2011

Какой самый безопасный способ использования файлов cookie для аутентификации пользователей на классическом веб-сайте ASP?

Я не хочу использовать объект сеанса ASP, поскольку время ожидания файла cookie сеанса истекает через некоторое время, и я хотел бы, чтобы пользователь мог сохранять активную регистрацию на веб-сайте между отдельными запусками браузера.

Однако я не хочу просто создавать куки, содержащие их ID пользователя, так как их можно легко подделать - так какие у меня есть варианты? Я думаю, что-то вроде шифрования, но я действительно не знаю, каковы стандартные методы для этого.

Ответы [ 3 ]

0 голосов
/ 06 августа 2011

Это, очевидно, применяется гораздо шире, чем просто ASP.

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

Хеш - криптографическая функция - когда вы пропускаете строку (например, пароль), вы получаете длинный код.Если ввод одинаковый, вывод всегда одинаковый.

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

Поэтому, когда пользователь настраивает учетную запись, он вводит свой желаемый пароль, но вы хэшируете этохранить это.Аналогичным образом, в файле cookie после входа в систему вы сохраняете хэш, а не пароль, и он сравнивается с хешем в БД.

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

Если вы действительно параноик, вы можете использовать двойной хэш, например, когда они входят в систему, пароль хешируется один раз.и хранится в cookie.Затем он снова хэшируется и сравнивается с паролем в БД (который также является двойным хэшем).

0 голосов
/ 17 ноября 2011

Не делай этого

Поддержание цитаты входа в систему пользователя "... между отдельными запусками браузера" небезопасно. ИМХО, при закрытии браузера предыдущий логин должен пропасть. Предположим, что ваш посетитель использовал общественный компьютер в кафе.

Если вы сохраните этот логин, у следующего пользователя сообщества появится возможность открыть браузер, перейти на свой веб-сайт и "poof" они автоматически войдут как предыдущий пользователь.

0 голосов
/ 04 августа 2011

Ваши варианты здесь в значительной степени ограничены.

Заставьте своих пользователей снова войти в систему; лучший подход к безопасности.

...