Avanpost FAM Mobile Services – набор бэкенд-сервисов, обеспечивающих работу мобильного приложения Avanpost Authenticator с on-premise экземпляром Avanpost FAM. Состоит из двух компонентов, предназначенных для размещения в DMZ при on-premise-развёртывании:
- Push Service; обеспечивает доставку push-уведомлений в мобильное приложение Avanpost Authenticator через стандартный механизм push в ОС Android и iOS.
- API Service; обеспечивает безопасную публикацию API для мобильных приложений Avanpost Authenticator в DMZ.
Функции, которые будут доступны для пользователей мобильного приложения-аутентификатора Avanpost Authenticator по результатам развёртывания компонентов Avanpost FAM Mobile Services:
- Доставка push-запросов на аутентификацию в мобильное приложение Avanpost Authenticator.
- Привязка мобильного аутентификатора посредством считывания QR-кода в мобильном приложении Avanpost Authenticator;
- Привязка мобильного аутентификатора посредством ввода одноразового кода в мобильное приложение Avanpost Authenticator;
- Подтверждение/отклонение запросов на аутентификацию в мобильном приложении Avanpost Authenticator;
- Получение актуальной информации об аккаунтах на стороне Avanpost FAM Server (получение информации о блокировке аккаунта админстратором и т.д.);
- Блокировка и удаление аккаунта из мобильного приложения с уведомлением об этом Avanpost FAM Server.
Компоненты Avanpost FAM Mobile Services обладают следующими характеристиками:
- Хранят все обрабатываемые данные в embedded-хранилищах, поэтому не требуют развёртывания отдельных компонентов для хранения данных.
- Готовы к размещению в DMZ, позволяют исключить прямой сетевой доступ со стороны демилитаризованной зоны (DMZ) и интернета во внутреннюю сеть.
Системные требования
Установка компонента Avanpost FAM Mobile Services рекомендуется на следующих серверных, десктопных операционных системах и платформах:
Платформа | Операционная система | Формат поставки | Прочие требования |
---|---|---|---|
Любая современная платформа виртуализации (VMWare, Hyper-V и т.д.), любые 64-битные x86-компьютеры и сервера |
| zip-архив с MSI-установочным исполняемым файлом | 1 ГБ ОЗУ 40 МБ свободного дискового пространства |
Варианты развёртывания
Компоненты Avanpost FAM Mobile Services поддерживают несколько вариантов развёртывания.
Развёртывание двух компонентов API Service с Push Service из состава FAM Mobile Services
Данный вариант разёртывания подойдёт в том случае, если:
- Необходимо использование механизма push-уведомлений пользователя о запросах аутентификации.
- Имеется организационная и техническая возможность обеспечить сетевую доступность внутренних сервисов до URL Google Firebase (
https://fcm.googleapis.com/
,https://firestore.googleapis.com/, https://oauth2.googleapis.com/
).
В данном варианте развёртывания доступны все функции мобильного аутентификатора Avanpost Authenticator.
Для реализации данной схемы развёртывания необходимо:
- Установить и выполнить настройку компонента Push Service из состава Avanpost FAM Mobile Services.
- Установить и выполнить настройку компонента API Service из состава Avanpost FAM Mobile Services.
Установка зависит от платформы и подробно описана в инструкциях:
- 4.3.1. Установка FAM Mobile Services в ОС Linux из rpm-пакета
- 4.3.2. Установка FAM Mobile Services в ОС Linux из deb-пакета
- 4.3.3. Установка FAM Mobile Services в ОС Linux из tar.gz-архива
Развёртывание компонента API Service без Push Service из состава FAM Mobile Services
Данный вариант развёртывания подойдёт в тех случаях, если:
- Нет потребности в использовании механизма push-уведомлений пользователя о запросах аутентификации.
- Нет организационной и технической возможности обеспечить сетевую доступность внутренних сервисов до URL Google Firebase (
https://fcm.googleapis.com/
,https://firestore.googleapis.com/, https://oauth2.googleapis.com/
). - Имеются ограничения на использование зарубежных сервисов (Google Firebase, Android)
В данном варианте развёртывания доступны все функции мобильного аутентификатора Avanpost Authenticator, за исключением функции доставки push-запросов на аутентификацию в мобильное приложение Avanpost Authenticator.
Установка зависит от платформы и подробно описана в инструкциях:
Безопасность
Защита входящих подключений от Avanpost FAM Server посредством токена
Токен, сгенерированный для проверки входящих подключений, представляет собой уникальный набор символов от 5 знаков.
При подключении Avanpost FAM Server к API Service производится проверка совпадения токена, указанного на стороне сервера, с токеном, указанным при запуске API сервиса. В случае совпадения токенов производится подключение.
Использование токена для входящих подключений обеспечивает:
- Безопасность. Токен выступает в роли временного ключа доступа к сервису, и может быть ограничен по времени.
- Аудит и отчетность. С помощью токена можно отслеживать использование сервиса и регистрировать каждое подключение к нему, что способствует точному отслеживанию ошибок и инцидентов в Системе.
- Удобство. Токены могут быть легко и быстро созданы и переданы внутри и между системами. Использование токенов не требует конфигурирования SSL, управления паролями и других сложных настроек.
Важно
В токене не должно содержаться кириллических символов, а также спецсимволов (~ . .. / # ? * [ ] ; & < > | ! $). Сам токен следует обрамлять одинарными кавычками в качестве дополнительной защиты (экранирование символов от использования их в качестве параметров командной строки).
Проверка подписи запросов от мобильных приложений Avanpost Authenticator
При привязке приложения Avanpost Authenticator к УЗ в системе FAM и впоследствии при отправке всех ключевых запросов используется алгоритм хеширования RSA SHA256 (асимметричный криптографический алгоритм, который использует два ключа: публичный и приватный).
Приватный ключ хранится на устройстве и используется для создания новых подписей. Все запросы, передаваемые устройством, подписываются закрытым ключом и отправляются на сервер для дальнейшей проверки посредством открытого ключа. Запрос или привязка выполняются только в случае успешной проверки.
наоборот запросы от устройства к серверу подписываются закрытым ключом, а уже на сервере проверяются открытым ключом.
Проверка доступности сервиса
Для проверки доступности сервиса возможен запрос (к адресу внешнего сервиса прибавить /api/health/live) с возвращением следующих кодов состояния HTTP:
- 200 при наличии по указанному адресу HTTP-сервера.
Для проверки состояния сервиса возможен запрос (к адресу внешнего сервиса прибавить /api/health/ready) с возвращением следующих кодов состояния HTTP:
- 200 при наличии подключения FAM Server.
- 503 при отсутствии подключения через gRPC.
TLS-шифрование передаваемых данных
При подключении Avanpost FAM к Push Service и API Service есть возможность использовать TLS-шифрование для обеспечения безопасной передачи данных.
TLS использует симметричное и асимметричное шифрование для защиты данных. При установлении соединения между Avanpost FAM и Push Service/API Service происходит процесс SSL/TLS handshake, который включает в себя обмен цифровыми сертификатами, установление типа шифрования и ключей для обеспечения безопасной связи.
В рамках подключения есть возможность настраивать и использовать протокол HTTPS.