Настройка Google авторизации в SaaS за 15 минут
Откройте доступ к полной системе авторизации SaaS за четверть часа. Без кода, без сложностей — всё работает из коробки.
Ключевые цифры
Как работает авторизация в SaaS
Авторизация — это механизм, который подтверждает личность пользователя и предоставляет ему доступ к личному кабинету. В SaaS-приложениях используется несколько компонентов, которые работают вместе как система замков и ключей.
HTTP протокол по умолчанию не сохраняет состояние — сервер не помнит предыдущие запросы. Именно поэтому нужны сессии (куки): после ввода пароля сервер создаёт уникальный идентификатор, который браузер отправляет с каждым запросом. Так сервер понимает, кто перед ним.
Кроме сессий нужны ещё три компонента:
- Хэширование паролей — преобразование пароля в нечитаемую строку, которую нельзя восстановить обратно
- Верификация email — отправка письма со ссылкой подтверждения, чтобы убедиться, что email реальный
- OAuth-авторизация — вход через сторонних провайдеров (Google, GitHub), без создания нового пароля
Эти четыре механизма вместе образуют полную систему авторизации. В SaaS-приложении они уже реализованы и работают без вашего вмешательства.
Безопасность: хэширование паролей
Главный принцип: пароли никогда не хранятся в открытом виде. Если база данных утечёт, злоумышленник не сможет воспользоваться паролями.
Хэширование — это односторонняя функция. Пароль преобразуется в длинную нечитаемую строку (например, $2b$12$R9h7cIPz0gi.URNNX3kh2e). Сколько бы раз вы ни применили хэширование к паролю, вы никогда не получите обратно оригинальный пароль.
При входе приложение не сравнивает сам пароль. Оно:
- Берёт введённый пароль
- Хэширует его тем же алгоритмом
- Сравнивает результат с сохранённым хэшем в базе
Если хэши совпадают — пароль верный.
Почему это важно? Пользователи часто используют один пароль для разных сервисов. Если ваша база утечёт, но пароли захэшированы, ваши пользователи в безопасности. Кроме того, современные стандарты требуют хэширования (GDPR, SOC 2) — без него ваш SaaS не пройдёт аудит безопасности.
Механизм сессий и куков
После успешного входа по паролю или OAuth сервер создаёт сессию — это запись о том, что этот пользователь авторизован. Браузер получает куку (небольшой файл) с уникальным идентификатором сессии.
При каждом новом запросе браузер автоматически отправляет куку серверу. Сервер проверяет идентификатор, нашёл в памяти информацию о пользователе — и выдаёт доступ к личному кабинету.
Жизненный цикл сессии:
- Создание — после успешного входа
- Использование — браузер отправляет куку с каждым запросом
- Истечение — сессия живёт ограниченное время (например, 30 минут)
- Удаление — при выходе или истечении таймера
Время жизни сессии можно настраивать. Короткая сессия (15 минут) повышает безопасность, но раздражает пользователя частыми перевходами. Длинная сессия (24 часа) удобнее, но рискованнее. Оптимум — 30–60 минут для банков, 4–24 часа для обычных SaaS.
Верификация email и OAuth Google
Верификация email решает две проблемы: во-первых, защищает от регистрации на чужой email (может привести к жалобам на спам), во-вторых, подтверждает, что владелец email реально существует.
После регистрации на указанный адрес отправляется письмо со ссылкой подтверждения. Аккаунт активируется только после клика по ссылке. Ссылка обычно действует 24–48 часов, чтобы пользователь имел время проверить почту.
OAuth-авторизация (вход через Google) — более удобный подход. Пользователь не создаёт новый пароль в вашем приложении, а авторизуется на стороне Google. Если он уже вошёл в Google аккаунт, вход в ваше приложение происходит в один клик.
Преимущества для пользователя:
- Не нужно запоминать новый пароль
- Вход в один клик (если уже в Google аккаунте)
- Google уже подтвердил личность пользователя
Преимущества для разработчика:
- Email уже верифицирован Google — отдельная проверка не нужна
- Меньше забытых паролей и запросов на восстановление
- Выше конверсия регистрации (одна кнопка вместо формы)
OAuth использует стандарт OAuth 2.0 — безопасный протокол, одобренный индустрией. Вы никогда не получаете пароль Google пользователя, только разрешённые данные (email и имя).
Практика: настройка SMTP и Google OAuth
Шаг 1. Подключение SMTP (на примере Resend)
Resend — сервис для отправки писем из приложения. Бесплатный тариф включает 100 писем в день, чего хватает для регистраций и восстановлений паролей на старте.
- Зарегистрируйтесь на resend.com
- Добавьте ваш домен (например, mail.yourdomain.com) — потребуется добавить DNS записи SPF и DKIM
- Создайте API ключ в настройках Resend (копируется один раз)
- В панели администратора вашего SaaS в разделе "Почта" заполните:
- Host:
smtp.resend.com - Port:
465 - Username:
resend - Пароль: ваш API ключ
- Host:
Шаг 2. Настройка входа через Google
- Откройте Google Cloud Console и создайте новый проект
- Перейдите в OAuth consent screen и укажите:
- Тип приложения: External
- Укажите основную информацию (название, email поддержки)
- После настройки опубликуйте приложение (Publish App)
- Создайте учётные данные (Credentials):
- Тип: Web application
- Скопируйте из настроек вашего SaaS Google Callback URL
- Вставьте его в поле "Authorized redirect URIs"
- Скопируйте Client ID и Client Secret
- В панели администратора вашего SaaS включите Google OAuth и вставьте полученные ключи
Готово! Вход через Google теперь работает.
Что получится в результате
После выполнения этих настроек в вашем SaaS-приложении полностью работают:
- Регистрация с подтверждением email (письмо отправляется с вашего домена)
- Вход по паролю с защитой от перебора (блокировка после нескольких попыток)
- Восстановление пароля через email с одноразовой ссылкой (действует 1 час)
- Одноразовые ссылки для сброса пароля — безопаснее, чем временные пароли
- Вход через Google в один клик
- Все пароли хэшированы в базе (256-bit шифрование)
- Сессии управляются автоматически (30 минут по умолчанию)
- Панель администратора для управления всеми настройками авторизации
Всё это реализовано в шаблоне без единой строки кода — вам только нужно заполнить настройки в интерфейсе. Система производства-готова: она прошла аудиты безопасности, соответствует GDPR и SOC 2.
Вопросы и ответы
Если у вас уже есть Google аккаунт и домен, настройка займёт 10–15 минут. Самое долгое — добавление DNS записей для домена Resend (5 минут ожидания на распространение). Все остальное — копирование ключей и включение переключателей.
Нет. Google уже подтвердил, что email пользователя реальный. Но если вы позволяете вход и по обычному паролю, и по Google, рекомендуется проверить email при регистрации по паролю (через письмо).
Он нажимает «Забыли пароль?», вводит email, получает письмо со ссылкой восстановления, устанавливает новый пароль. Всё автоматизировано. Альтернатива — войти через Google, не создавая нового пароля.
Да, это стандарт индустрии. Хэширование делает пароли нечитаемыми даже для самого сервера. Даже если база утечёт, хэши практически невозможно обратить в оригинальные пароли (требуется миллиарды вычислений).
Главное
Google авторизация за 15 минут в SaaS — это не гипербола, а реальность благодаря встроенным шаблонам и сервисам вроде Resend. Система охватывает все критические аспекты безопасности: хэширование паролей, сессии, верификацию email и OAuth 2.0. После настройки ваше приложение готово к продакшену и аудитам безопасности.