Незаметная авторизация на веб-ресурсах Telegram

Некоторое время назад наши подписчики обратили внимание, что если пройти по ссылке web.telegram.org из мобильного или десктопного приложения Telegram, то веб-приложение не предлагает пользователю пройти авторизацию, а сразу отображает содержимое его аккаунта. Редакция @tginfo рассказывает детали механизма автоматической авторизации Telegram.

Что происходит?

При переходе из мессенджера на некоторые веб-ресурсы Telegram пользователю не нужно авторизовываться там своим аккаунтом. Приложение добавляет к ссылке специальный токен, благодаря чему ресурс не запрашивает ни номер телефона аккаунта, ни облачный пароль, а автоматически пускает пользователя.
Важно отметить, что функция появилась во всех приложениях Telegram довольно давно: ее поддерживают по меньшей мере последние несколько версий приложений на Android, iOS, MS Windows и macOS.

На каких ресурсах это работает?

  • web.telegram.org: веб-приложение Telegram
  • web.t.me: в настоящее время ведет на главную страницу официального сайта telegram.org
  • a.t.me: ведет на telegram.org
  • k.t.me: ведет на telegram.org
  • z.t.me: ведет на telegram.org
  • instantview.telegram.org: платформа для работы с шаблонами Instant View
  • translations.telegram.org: платформа для перевода приложения на разные языки
  • contest.com: платформа для конкурсов среди сторонних разработчиков и дизайнеров
  • contest.dev: ведет на contest.com
  • bugs.telegram.org: платформа для публикации и просмотра пользовательских сообщений о багах
  • suggestions.telegram.org: платформа для публикации и просмотра пользовательских предложений
  • themes.telegram.org: платформа для разработки тем оформления приложений
  • promote.telegram.org: рекламная платформа

Риски

Незаметная авторизация удобна большинству пользователей, но создает некоторые риски.

При авторизации в веб-приложении создается новый активный сеанс. Об этом пользователю приходит сообщение от служебного аккаунта Telegram, однако забыть о таком автоматически созданном сеансе все же проще, чем когда пользователь осознанно авторизовывается в веб-приложении. Закрыв вкладку браузера, пользователь может забыть о том, что по-прежнему авторизован.

Авторизация на веб-ресурсе происходит именно тем аккаунтов, из которого пользователь переходит по ссылке. Если пользователь ранее был авторизован на веб-ресурсе одним аккаунтом, а потом переходит по ссылке из другого, то в итоге он оказывается авторизован вторым аккаунтом, а не первым. На некоторых ресурсах это достаточно сложно заметить.

Эти два риска усугубляются тем, что ни приложение, ни веб-ресурс не только не предлагают пользователю ввести свои данные авторизации, но даже не предупреждают пользователя о том, что авторизация вообще происходит.

Что можно улучшить?

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

Редакция Telegram Info предлагает администрации Telegram изменить поведение приложений и вместо незаметной авторизации давать пользователю возможность отказаться от нее: https://bugs.telegram.org/c/34337.