Как настроить единый вход (SSO) для личных кабинетов и основного сайта

Дата публикации 03.06.2026

У многих компаний есть основной сайт (на WordPress, Tilda, самописный) и отдельно личный кабинет на поддомене (cabinet.site.ru). Клиенту неудобно регистрироваться дважды. Хорошо бы сделать единый вход: зарегистрировался на основном сайте — и уже может зайти в кабинет. Такая технология называется SSO (Single Sign-On). Реализовать её проще, чем кажется, даже без сложных протоколов вроде OAuth. Расскажу о трёх способах, подходящих для малого бизнеса.

Способ 1. Общая база пользователей и общие сессии (простой, но жёсткий)

И основной сайт, и личный кабинет работают с одной базой данных пользователей (например, таблица Users в общем SQL Server). При этом используется один и тот же механизм хеширования паролей. Плюс: ничего сложного. Минус: нужно, чтобы оба сайта были на одной технологической платформе или хотя бы поддерживали одну хеш-функцию. Если у вас основной сайт на PHP (WordPress), а кабинет на Falcon Space, то можно хранить пароль в поле PasswordHash, а при входе на основном сайте вызывать API кабинета для проверки. Но это уже ближе ко второму способу.

Способ 2. Использование токена (OAuth-подобный)

Более правильный и масштабируемый. Клиент заходит на основной сайт, вводит логин/пароль. Основной сайт отправляет эти данные в API личного кабинета и получает временный токен. Затем перенаправляет клиента на кабинет, передавая токен в URL. Кабинет проверяет токен и авторизует пользователя. Токен живёт, например, 5 минут. Протокол OAuth 2.0 можно упростить до одной пары endpoint’ов.

Способ 3. Общий вход через соцсети или Telegram (самый современный)

Если и основной сайт, и кабинет поддерживают вход через VK ID, Яндекс ID или Telegram Login, то можно не «связывать» напрямую. Клиент везде использует одну и ту же соцсеть, и у вас объединяются пользователи по внешнему ID. Но это требует, чтобы оба сайта были настроены на один OAuth-провайдер. Не всегда удобно.

Пошаговая реализация второго способа (на примере Falcon Space + любой CMS)

Шаг 1. На основном сайте (например, WordPress) установите плагин для кастомного API или напишите простой скрипт, который принимает логин/пароль, валидирует через хранимую процедуру в БД личного кабинета.

Шаг 2. В личном кабинете (Falcon Space) создайте API-метод (страницу) /api/token, который принимает логин/пароль и, если верно, генерирует случайную строку (токен), сохраняет её в таблице AuthTokens (UserId, Token, Expiry) и возвращает JSON.

Шаг 3. После успешного входа на основном сайте редиректите клиента на cabinet.site.ru/autologin?token=... Страница autologin проверяет токен, находит UserId и создаёт сессию. Токен удаляется. Клиент попадает в кабинет уже авторизованным.

Время реализации: 1-2 дня для программиста, знающего PHP и SQL.

Безопасность: что важно учесть

  • Всегда передавайте пароль только по HTTPS (у нас сегодня нет вариантов).
  • Токен должен быть достаточно длинным и случайным (например, GUID).
  • Ограничьте жизнь токена 5 минутами.
  • После использования токен удаляйте, чтобы нельзя было повторно зайти по старой ссылке.

Пример: как интернет-магазин объединил вход в кабинет и на сайт

Магазин на WooCommerce, кабинет на Falcon Space. Клиенты жаловались, что нужно запоминать два пароля. Сделали на основном сайте форму входа, которая через curl отправляла данные к API кабинета, получала токен и редиректила. Дополнительно синхронизировали пароли при смене через API. Затраты на разработку — 30 тыс руб, через 2 месяца количество обращений в поддержку по поводу доступа снизилось на 95%. Клиенты счастливы.

SSO — это не роскошь, а стандарт удобства. Клиент ценит, когда ему не нужно помнить сотню паролей. Настройте единый вход — и вы повысите конверсию в регистрации на основном сайте, и упростите жизнь вашим пользователям.

Запрос расчета стоимости веб-проекта на базе Falcon Space
Если видео Youtube плохо грузится, то попробуйте найти видео в ВК видео на канале Falcon Space
Сайт использует Cookie, Яндекс Метрику. Используя сайт, вы соглашаетесь с правилами сайта. См. Правила конфиденциальности и Правила использования сайта OK