Общие сведения
Мессенджер Telegram – популярное решение для обмена сообщениями, которое зачастую используется для быстрой коммуникации между сотрудниками различных организаций. Мессенджер Telegram может использоваться в качестве 2FA/MFA-метода аутентификации при доступе к корпоративным информационным системам и приложениям, подключенным к Avanpost FAM. Может выступать в качестве удобной альтернативы методам SMS-аутентификации и методам аутентификации через E-mail. Как и мобильное приложение Avanpost Authenticator, позволяет обеспечить 2FA для информационных систем без поддержки функции запроса у пользователя дополнительных сведений.
Доставка запроса на аутентификацию осуществляется посредством защищённого Telegram Bot API с использованием отдельного аккаунта Telegram-бота.
Для того, чтобы пользователь мог пользоваться своим смартфоном в качестве аутентификатора – требуется выполнить привязку аккаунта Telegram к аккаунту в Avanpost FAM. Привязка Telegram возможна в следующих сценариях:
- Привязка в личном кабинете Avanpost FAM посредством считывания QR-кода;
- Привязка в личном кабинете Avanpost FAM посредством открытия ссылки со схемой
tg://
в десктопном или мобильном приложении-мессенджере Telegram; - Привязка в процессе аутентификации посредством считывания QR-кода (веб-приложения, десктоп-приложения);
- Привязка в процессе аутентификации посредством открытия ссылки со схемой
tg://
в десктопном или мобильном приложении-мессенджере Telegram.
Telegram в качестве 2FA/MFA-метода аутентификации Avanpost FAM может использоваться для следующих механизмов интеграции:
- OAuth/OpenID Connect;
- SAML;
- Reverse Proxy;
- RADIUS;
- Enterprise SSO через Avanpost FAM Agent;
- Windows Logon через Avanpost FAM Credential Provider;
- Linux Logon через Avanpost FAM PAM Linux.
В качестве средства подтверждения push-запроса в Telegram может использоваться:
- Мобильное приложение Telegram;
- Десктопный клиент Telegram.
Системные требования к инфраструктуре для работы Telegram в качестве метода аутентификации:
- Развёрнутый во внутренней сети компонент Avanpost FAM Server 1.4.0 или новее;
- Выполненная настройка подключения Telegram Bot на стороне Avanpost FAM Server.
Сценарии использования
Некоторые возможные сценарии применения мобильного приложения Avanpost Authenticator для решения прикладных задач:
- Аутентификация в веб-приложения с push-подтверждением через Telegram
- Аутентификация в VPN/VDI (RADIUS) с push-подтверждением через Telegram
- Аутентификация в десктопные приложения (Enterprise SSO) с push-подтверждением через Telegram
- Аутентификация на рабочие станции с push-подтверждением через Telegram
- Привязка Telegram посредством считывания QR-кода (веб-приложения, АРМ, десктопные приложения)
- Привязка Telegram посредством считывания QR-кода в личном кабинете
- Привязка аутентификатора к служебному идентификатору пользователя Telegram
Аутентификация в веб-приложения с push-подтверждением через Telegram
Возможно использование push-аутентификации через мессенджер Telegram для всех веб-приложений, подключаемых с целью 2FA/MFA/SSO посредством технологий:
Примеры некоторых корпоративных систем, для которых применим данный сценарий:
- MFA/SSO в Citrix Virtual Apps and Desktops, Citrix XenApp, Citrix XenDesktop без Citrix FAS;
- MFA/SSO в CRM Creatio (Terrasoft bpm'online);
- MFA/SSO в Grafana;
- MFA/SSO в Atlassian Jira Server;
- MFA/SSO в Atlassian Confluence Server;
- и т.д.
Аутентификация в VPN/VDI (RADIUS) с push-подтверждением через Telegram
Возможно использование push-аутентификации через мессенджер Telegram для всех приложений, подключаемых с целью 2FA посредством RADIUS.
Примеры корпоративных систем, для которых применим данный сценарий:
- 2FA в Cisco AnyConnect, Cisco ASA, Cisco ASAv;
- 2FA в OpenVPN;
- 2FA в Remote Desktop Gateway/RD Gateway;
- 2FA в Microsoft VPN;
- и т.д.
Аутентификация в десктопные приложения (Enterprise SSO) с push-подтверждением через Telegram
Avanpost FAM позволяет выполнять аутентификацию через мессенджер Telegram в десктопные приложения, подключенные с целью 2FA/MFA/SSO посредством механизма Enterprise SSO и с использованием клиентского компонента Avanpost FAM Agent.
Примеры корпоративных систем, для которых применим сценарий:
- MFA/SSO в 1С:Предприятие 8.3.13 и ниже (Тонкий клиент, Enterprise SSO);
- MFA/SSO в SAP Logon;
- MFA/SSO в TrueConf;
- и т.д.
Аутентификация на рабочие станции с push-подтверждением через Telegram
Avanpost FAM позволяет выполнять аутентификацию с подтверждением 2FA/MFA через мессенджер Telegram на рабочие станции и сервера под управлением ОС Microsoft® Windows и Linux.
Доступно для всех рабочих станций и серверов, подключенных к Avanpost FAM с целью 2FA/MFA посредством компонентов Avanpost FAM Credential Provider и Avanpost FAM PAM Linux.
Примеры задач, для которых применим сценарий:
- 2FA/MFA при подключении по RDP к Windows Desktop 7/8/10/11 и Windows Server 2012R2/2016/2019;
- 2FA/MFA при входе в Windows Desktop 7/8/10/11 и Windows Server 2012R2/2016/2019;
- и т.д.
Привязка Telegram посредством считывания QR-кода (веб-приложения, АРМ, десктопные приложения)
Avanpost FAM позволяет выполнить привязку аутентификатора посредством считывания камерой смартфона QR-кода в процессе аутентификации, если он не был привязан ранее к пользователю.
Это удобно для тех приложений и технологий интеграции в части аутентификации, которые поддерживают отображение пользователю на экране QR-кода. К таким относятся множество приложений, подключаемых посредством механизмов аутентификации:
Примеры корпоративных систем, для которых доступна привязка путём считывания QR-кода:
- Atlassian Confluence Server
- Atlassian Jira Server
- 1С:Предприятие 8.3.14 и выше (OpenID Connect)
- CRM Creatio (Terrasoft bpm'online)
- и т.д.
Привязка Telegram посредством считывания QR-кода в личном кабинете
Привязка и настройка аутентификатора Telegram может быть выполнена посредством считывания QR-кода камерой на смартфоне в личном кабинете.
Архитектура
Аутентификация через Telegram требует для своего применения использования Telegram Bot API. Данный метод ориентирован на использование в связке с on-premise экземпляром компонента Avanpost FAM Server системы Avanpost FAM.
Архитектура Avanpost FAM поддерживает решение, позволяющее использовать один телеграм-бот (токен), связанный с несколькими экземплярами Avanpost FAM Server. При этом исключается конфликт экземпляров FAM Server при взаимодействии с токеном. Экземпляры Avanpost FAM поддерживает соединение с одним телеграм-сервисом, контролирующим токен. В случае, если утрачивается связь с текущим телеграм-сервисом, другой телеграм-сервис устанавливает контроль над токеном и осуществляет обновление всех экземпляров Avanpost FAM.
Схема взаимодействия Avanpost FAM с телеграм-сервисами
Для использования метода аутентификации требуется выполнить настройку метода аутентификации в соответствии с инструкцией.
Безопасность и меры защиты
Система Avanpost FAM обеспечивает ряд мер защиты при использовани метода аутентификации через мессенджер Telegram.
Отдельный аккаунт Telegram Bot
Для каждой инсталляции системы Avanpost FAM администратор системы должен самостоятельно зарегистрировать телеграм-бота и выпустить для него секретный токен. Данный подход исключает совместное использование одного аккаунта различными экземплярами системы Avanpost FAM.
Привязка аутентификатора к служебному идентификатору пользователя Telegram
Avanpost FAM сохраняет анонимность аккаунтов Telegram сотрудников, так как не хранит логины в Telegram и другие сведения. Идентификация выполняется посредством служебного идентификатора пользователя, который не может быть использован для деанонимизации аккаунта в Telegram.
Работа без сетевого доступа из интернета к внутренним сервисам
Для работы мессенджера Telegram в качестве метода аутентификации в Avanpost FAM не требуется открывать наружу сетевой доступ. Сервисы Avanpost FAM самостоятельно подключаются к Telegram Bot API, при этом не требуя открытия обратного канала взаимодействия.
Часто задаваемые вопросы
Возможно ли идентифицировать аккаунт пользователя Telegram на основе факта привязки аутентификатора к Avanpost FAM?
Нет, для привязки аккаунта Telegram и отправки пользователю сообщений используется служебный анонимный идентификатор пользователя в Telegram, по которому нельзя получить атрибуты пользователя.