ID Провайдера

{CA4645CC-5896-485E-A6CA-011FCC20DF1D}

Информация

Файлы для Indeed Telegram OTP Provider расположены: indeed AM <Номер версии>\Indeed AM Providers\Indeed AM Telegram OTP Provider\

  • <Номер версии>\IndeedAM.AuthProviders.TelegramOTP-<номер версии>.x64.ru-ru.msi - Пакет для установки Indeed AM Telegram OTP Provider x64 версии.
  • <Номер версии>\IndeedAM.AuthProviders.TelegramOTP-<номер версии>.x86.ru-ru.msi - Пакет для установки Indeed AM Telegram OTP Provider x86 версии.
  • IndeedId.Telegram.Service-<номер версии>.x86.ru-ru.msi - Пакет для установки службы для работы с ботом.
  • Misc\Reg - Файл настройки сервиса отправки через реестр.

Файлы шаблонов политик расположены: indeed AM <номер версии>\Misc\ADMX Templates.

О компоненте Indeed AM Telegram OTP Provider

Информация

Для работы компонента требуется доступ к серверам Telegram для сервисной службы.

Информация

В данной версии системы Indeed провайдер Telegram OTP поддерживается в сценариях с Indeed NPS Radius, Identity Provider, IIS Extension.

Компонент Indeed AM Telegram Provider предназначен для аутентификации пользователей с применением технологии одноразовых паролей, доставляемых пользователям через созданного бота в мессенджере Telegram.

Одноразовый пароль представляет собой набор случайных символов (цифр, специальных символов и латинских букв). Генерация пароля происходит на сервере Indeed AM, затем пароль передается на серверы Telegram и отображается в чате с ботом.

Установка

Установка сервисной службы

  1. Выполнить установку службы AM Telegram Service через запуск соответствующего пакета.
  2. После завершения установки может потребоваться перезагрузка системы. Если программа установки предлагает выполнить перезагрузку, подтвердите данное действие.
  3. Удаление/Восстановление продукта осуществляется стандартным для поддерживаемых ОС способом, через меню Панель управления.

Установка провайдера

  1. Выполнить установку провайдера Telegram OTP через запуск соответствующего пакета.

    Информация

    Если в инфраструктуре используется несколько серверов Indeed AM, то установку провайдера необходимо выполнить на всех серверах инфраструктуры. 

  2. После завершения установки может потребоваться перезагрузка системы. Если программа установки предлагает выполнить перезагрузку, подтвердите данное действие.
  3. Удаление/Восстановление продукта осуществляется стандартным для поддерживаемых ОС способом, через меню Панель управления.

Настройка

Создание бота

  1. Откройте приложение Telegram, найдите специального бота "@botfather" и откройте диалог с данным ботом.
  2. Нажмите "Start" и введите команду "/newbot".
  3. Необходимо указать имя создаваемого бота, данное название будет отображаться в окне диалога с ботом. Введите любое имя, например, IndeedOTP.
  4. Необходимо указать имя пользователя для аккаунта с ботом с 'bot' в конце, данное имя пользователя используется для ссылок на него. Введите любое имя, например, IndeedOTP_bot.
  5. В случае успешной регистрации будет отображен токен для доступа к API. Данный токен потребуется для настройки службы "AM Telegram Service".

Настройка службы

  1. Откройте конфигурационный файл службы AM.Telegram.Service.exe.config (C:\Program Files (x86)\Indeed-Id\Indeed-Id Telegram Service).

    Информация

    Для сохранения изменений в конфигурационном файле приложения, требуется запустить редактор с правами администратора.

  2. В атрибутах value для соответствующих атрибутов key укажите необходимые значения
    1. culture - Язык локализации, поддерживается русский и английский. Значение по умолчанию: ru-RU.
    2. EAWebAPIURL - URL адрес сервер Indeed AM.
    3. username - Имя сервисного пользователя от имени которого будет осуществляться регистрация аутентификаторов.
    4. password - Пароль сервисного пользователя.
    5. lognames - Формат логирования имен пользователей. Значение по умолчанию: Name.  Поддерживаемые форматы:
      • Id - Идентификатор пользователя в системе Indeed AM в формате rootUserCatalogProviderId_Guid.
      • Name - Значение атрибута name из Active Directory. 
      • CanonicalName - Имя пользователя в формате Canonical-Name   (myserver.demo.local/users/UserName). 
      • PrincipalName - Значение атрибута userPrincipalName из Active Directory. 
      • SamCompatibleName - Имя пользователя в формате domainName\UserName
      • DistinguishedName - Значение атрибута distinguishedName из Active Directory. 
      • Sid - Значение атрибута objectSid из Active Directory. 
      • Email - Значение атрибута mail из Active Directory или значение указанное в конфигурационном файле сервера. 
      • Phone- Значение атрибутаtelephoneNumber из Active Directory или значение указанное в конфигурационном файле сервера.

        Пример
        <add key="lognames" value="PrincipalName,Sid" />
    6. botId - Идентификатор бота(токен), получаемый при его регистрации в Telegram.

      Пример
      <appSettings>
          <add key="culture" value="ru-RU" />
          <add key="EAWebAPIURL" value="https://server.indeed.local/am/core/" />
          <add key="username" value="telegram@indeed.local" />
          <add key="password" value="Q1q2E3e4" />
          <add key="lognames" value="Name" />
          <add key="botId" value="1156320278:AAG24_EODMotm_feYYQOfbPddK_2Z_JDiKQ" />
        </appSettings>
  3. Задайте url для подключения к лог серверу. Редактируем тег logServer.
    1. URL - url для подключения к log серверу в формате http(s)://полное_dns_имя_сервера/ls/api.
    2. CertificateThumbprint - если закрытый ключ в реестре, а сертификат в хранилище компьютера.
    3. CertificateFilePath - если ключевая пара в pfx.
    4. CertificateFilePassword- пароль от pfx.

      <logServer Url="https://logserver.indeed.local/ls/api/" CertificateThumbprint="" CertificateFilePath="" CertificateFilePassword="" />
  4. Запустите службу "AM Telegram Service".

Настройка сервиса отправки

Настройка через групповые политики

Информация

Перед настройкой групповой политики необходимо добавить в список административных шаблонов шаблоны политик Indeed AM. Файлы шаблонов политик входят в состав дистрибутива провайдера и расположены в каталоге Misc.

  1. Откройте политику "Сервис отправки Telegram".
  2. В поле "Идентификатор бота Telegram" Укажите идентификатор(токен) созданного бота.
  3. В поле "Дополнительный текст перед OTP" можно задать дополнительную информацию:

    Необязательный параметр

    • <app> - Приложение
    • <requestLocalServerTime> - Время
    • <requestComputerDns> - dns имя клиентской машины
    • <requestComputerIp> - ip адрес клиентской машины

Настройка через реестр

Информация

В /Misc/Reg провайдера расположен .reg файл с примером настройки.

  1. В разделе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Indeed-ID\BSPs создайте раздел "TelegramOTP".
  2. В разделе "TelegramOTP" создайте параметр типа REG_SZ с именем "BotId" и укажите идентификатор (токен) бота.
  3. В разделе "TelegramOTP" создайте параметр типа REG_SZ с именем "messageOTP" и укажите дополнительную информацию, которую будет отображать перед OTP:  

    Необязательный параметр

    • <app> - Приложение
    • <requestLocalServerTime> - Время
    • <requestComputerDns> - dns имя клиентской машины
    • <requestComputerIp> - ip адрес клиентской машины

Настройка параметров аутентификации

Информация

Перед настройкой групповой политики необходимо добавить в список административных шаблонов шаблоны политик Indeed AM. Файлы шаблонов политик входят в состав дистрибутива провайдера и расположены в каталоге Misc.

Настройка генерации одноразового пароля

Политика позволяет задать длину и вхождение групп символов при генерации одноразового пароля.

Группы символов:

  • Цифры - "0-9";
  • Строчные латинские буквы - "a-z";
  • Прописные латинские буквы - "A-Z";
  • Специальные символы - ",.<>/?[]{}=+-_\|!@#$%^&*()"

Если политика не определена или выключена, то пароль будет состоять из цифр, строчных латинских букв и иметь длину 6 символов.

Регистрация аутентификатора

Информация

При регистрации провайдера будет запрошен номер телефона из аккаунта Telegram, необходимо чтобы у пользователя в AD номер телефона полностью соответствовал и был одного формата. Поддерживаемы форматы: +7xxxxxxxxxx или 8xxxxxxxxxx 

  1. Откройте чат с созданным ботом и нажмите "Start".
  2. Введите команду "/register". После ввода команды необходимо предоставить номер телефона аккаунта Telegram боту.
  3. При успешной регистрации аутентификатора отобразится сообщение "Вы были успешно зарегистрированы".

Настройка защиты от спама

Описание работы

Осуществляется оценка процента успешных входов относительно всех отправленных сообщений за указанный интервал времени (оценка осуществляется только если кол-во отправленных сообщений превышает "Окно оценки").

При обнаружении атаки блокируется дальнейшая отправка сообщений, при попытке входа возникает ошибка: Potential spam attack detected.

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

Чтобы настроить защиту от спама:

  1. Откройте редактор реестра;
  2. Создайте раздел Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Indeed-Id\BSPs\TelegramOTP\SpamProtection\;
  3. Создайте необходимые параметры:
    1. SpamProtectionEnabled: Флаг включения защиты от спама (DWORD). Значение по умолчанию: 0

    2. TimeSpanSec: Интервал времени (сек), по которому осуществляются расчеты (DWORD). Значение по умолчанию: 600

    3. EvaluationWindow: Окно оценки (DWORD). Значение по умолчанию: 10

    4. MinSuccessfulLogonPercent: Минимальный процент успешных входов относительно всех отправленных сообщений (DWORD). Значение по умолчанию: 20

События лог-сервера

2090: Обнаружена потенциальная спам-атака. Отправка сообщений приостановлена.

1118: Отправка сообщений пользователям возобновлена.

Настройка прокси

Чтобы настроить работу Telegram OTP Provider через прокси, выполните следующие действия:

  1. Откройте конфигурационный файл AM.Telegram.Service.exe.config из C:\Program Files (x86)\Indeed-Id\Indeed-Id Telegram Service и измените следующие параметры:
    1. в параметре useProxy укажите значение true (по умолчанию false)
    2. в параметре proxyAddress укажите адрес прокси-сервера
  2. Откройте редактор реестра. В созданном ранее разделе Telegram OTP создайте два параметра:
    1. параметр типа REG_SZ с именем proxyAddress с адресом прокси-сервера
    2. параметр типа REG_DWORD с именем useProxy со значением 1

  • No labels