Что такое OAuth — и почему «Войти через Google» не отдаёт твой пароль

Ты жмёшь «Войти через Google» на новом сайте. Через два клика ты внутри. И вот что многие не замечают: сайт так и не узнал твой пароль от Google. Вообще. Ни одной буквы.
Звучит как фокус, но это и есть смысл OAuth — стандарта, по которому один сервис пускает тебя в другой, не передавая ему твой пароль. Ты встречаешь его каждый день: «Войти через Google», «Продолжить с Apple», подключение Телеграма к боту. Разберёмся, как это устроено — и почему это безопаснее, чем кажется.
Аналогия с отелем
Представь, что ты заселяешься в отель. На рецепшене тебе не выдают мастер-ключ от всего здания. Тебе дают карту-ключ от твоего номера — она открывает только его, работает до выезда, и её в любой момент можно отключить.
OAuth — это ровно тот же рецепшн, только цифровой:
- Ты — гость.
- Google — рецепшн, который тебя знает (у него твой пароль).
- Новый сайт — дверь, в которую ты хочешь войти.
- Токен доступа — та самая карта-ключ: ограниченная, временная, отзываемая.
Сайт получает не пароль, а карту-ключ. И эта карта говорит ровно: «этот человек — тот, за кого себя выдаёт, и разрешил показать вам своё имя и почту». Не больше.
Что происходит по шагам
Когда ты жмёшь кнопку, за полсекунды проходит вот что:
- Сайт перекидывает тебя на страницу Google — настоящую, на домене google.com. Пароль ты вводишь только здесь, если вообще не залогинен.
- Google спрашивает: «Сайт X хочет узнать твоё имя и email. Разрешаешь?» Ты видишь, что именно отдаёшь.
- Жмёшь «Разрешить» — Google выдаёт сайту токен (ту самую карту-ключ).
- Сайт по токену делает запрос к API Google: «кто это?» — получает имя и почту, и пускает тебя.
Ключевое: пароль ты ввёл на стороне Google, не на чужом сайте. Поэтому даже если сайт завтра взломают, твоего пароля там нет — красть нечего.
Зачем это тебе как создателю приложения
Две причины, и обе сильные.
Для пользователя — ноль трения. Не надо придумывать ещё один пароль и подтверждать почту. Один тап — и человек внутри. Это заметно поднимает долю тех, кто реально регистрируется.
Для тебя — ты не хранишь пароли. А пароли это головная боль и риск: их надо безопасно шифровать, защищать, восстанавливать. С OAuth этим занимается Google или Apple, а ты просто получаешь подтверждённые имя и почту. Меньше кода, меньше способов облажаться с безопасностью.
Под капотом сайт после входа обычно выдаёт тебе свой токен сессии, который браузер хранит и шлёт при каждом запросе. Ключи и секреты для OAuth при этом держат не в коде, а в переменных окружения. Но это уже следующий слой; для понимания OAuth достаточно картинки с картой-ключом.
Частые вопросы
OAuth и пароль — это одно и то же?
Нет. Пароль — это секрет, который ты вводишь. OAuth — это способ войти без передачи пароля чужому сайту: ты подтверждаешь личность у доверенного сервиса (Google, Apple), а сайту достаётся только временный токен.
Это безопасно — давать доступ через Google?
Да, и обычно безопаснее, чем заводить новый пароль. Ты всегда видишь, что именно отдаёшь (имя, почту), и можешь в настройках Google в любой момент отозвать доступ — как отключить карту-ключ. Главное правило: пароль вводи только на странице самого Google/Apple, проверяя домен.
А если я хочу добавить такой вход в своё приложение?
Тебе не нужно реализовывать OAuth с нуля — это сложно и легко сделать небезопасно. Готовые сервисы (Supabase, Clerk, Auth0) дают кнопку «Войти через Google» в пару строк. Как это сделать пошагово — в гайде как добавить вход в приложение.
Короткие уроки-истории, симулятор агента и ежедневная практика — в нашем мобильном приложении. Бесплатно.





