Рассмотрим авторизацию в Битриксе. Итак, в Bitrix, как мы знаем, сделана очень удобная технология, которая называется единая авторизация на всех сайтах в одной системе, таким образом, если у вас несколько сайтов и вы залогинились на одном, то на других вы автоматически войдете под текущим профилем. Есть исключения из этого удобства: если вы уже залогинены на некотором другом сайте под другим профилем, то на нем вы и останетесь.
При авторизации на одном сайте, Битрикс делает запрос на все домены, указанные в настройках сайта, для /bitrix/spread.php. Эти скрипты запускают сессию для каждого домена, в сессию прописывается токен (генерируемый секретный код). После перехода на следующий домен сравниваются текущие знания cookies и секретный токен, сохранённый в сессии, если это все совпадает, то осуществляется автоматическая авторизация, если нет то нет.
Для разработчиков представлено целых четыре системных компонента для реализации этих функционалов авторизации, смены пароля и регистрации рядовых пользователей системы (system.auth.*), но увы пока отсутствует официальная документация по применению.
На различных ресурсах (например, хабрахабре) можно найти неофициальные мануалы по особенностям использования этих компонентов, рекомендации как использовать и что конфигурировать. В данной статье мы лишь описали базовый механизм работы сквозной авторизации.
Comments are closed.