Аутентификация пользователей на веб-сайтах работает следующим образом: habr.com
- При обращении неавторизованного клиента к защищённому ресурсу сервер отсылает HTTP-статус 401 Unauthorized и добавляет заголовок WWW-Authenticate с указанием схемы и параметров аутентификации. habr.com
- Браузер при получении такого ответа автоматически показывает диалог ввода имени пользователя и пароля. habr.com
- Пользователь вводит детали своей учётной записи. habr.com
- Во всех последующих запросах к этому веб-сайту браузер автоматически добавляет HTTP-заголовок Authorization, в котором передаются данные пользователя для аутентификации сервером. habr.com
- Сервер аутентифицирует пользователя по данным из этого заголовка. habr.com
- Решение о предоставлении доступа (авторизация) производится отдельно на основании роли пользователя, ACL или других данных учётной записи. habr.com
Ещё один способ аутентификации на основе файлов cookie: proglib.io
- Пользователь входит в веб-приложение со своими учётными данными. proglib.io
- Сервер проверяет учётные данные и создаёт сеанс в базе данных. proglib.io
- Сервер отправляет файл cookie браузеру, включая его в заголовок Set-Cookie. proglib.io Файл cookie отправляется в виде пары имя-значение и содержит уникальный идентификатор пользователя. proglib.io
- При входе в веб-приложение браузер получает файл cookie с сервера, сохраняет его и отправляет с каждым последующим запросом, чтобы сервер мог убедиться, что запросы поступают от одного и того пользователя. proglib.io
Ещё один метод — аутентификация на основе токенов: proglib.io
- Пользователь входит в веб-приложение со своими учётными данными. proglib.io
- Сервер проверяет учётные данные и отправляет зашифрованный токен в браузер. proglib.io
- Браузер сохраняет токен и добавляет его в заголовок авторизации будущих запросов. proglib.io