- Начало работы
- Интеграция
- HTTP API
- OpenID Connect
- RADIUS протокол
- RADIUS адаптер
- LDAP адаптер
- Портал самообслуживания
- MULTIFACTOR Directory Sync
- Windows Logon
- Регистрация пользователей
- .NET Core
- 1с-Bitrix24
- 1с-плагин двухфакторной аутентификации
- ADFS
- ASP.NET
- Ansible AWX
- Atlassian Cloud
- BearPass
- Check Point VPN
- Cisco ASA VPN
- Citrix Gateway
- Deckhouse Stronghold
- Exchange ActiveSync
- FortiGate VPN
- HRBOX
- Huawei Cloud
- Huawei VPN
- Ideco
- Infrascope
- Grafana
- Keycloak
- Let's Encrypt Windows Server
- Linux logon (GUI/SSH)
- Linux SSH
- Linux SUDO
- Microsoft Entra ID
- MikroTik L2TP VPN
- NGate VPN
- Network Policy Server (NPS)
- Nextcloud
- OpenVPN
- OpenVPN + AD
- OpenVPN Access Server
- OpenVPN pfSense
- Outlook Web Access (OWA)
- Palo Alto GlobalProtect
- Passwork
- RD Gateway (RDGW)
- Redmine
- Solar SafeInspect
- UserGate VPN
- VMware Horizon Cloud
- VMware Horizon View
- VMware vCloud Director
- VMware vSphere
- Vault
- ViPNET
- Windows VPN
- WordPress
- Yandex.Cloud
- Yandex 360
- Zabbix
- АйТи-Бастион
- Континент 4 VPN
- МТС Линк (бывш. webinar.ru)
- С-Терра VPN
- Точка доступа Wi-Fi
- ФПСУ-IP/Клиент
API запросов доступа
API для создания запросов доступа на двухфакторную аутентификацию, а также для получения истории запросов.
Создание запроса доступа
Функция для создания запроса на двухфакторную аутентификацию.
Доступ к API
Для создания запросов доступа необходима авторизация с API Key и API Secret ресурса, к которому создается запрос доступа. Оба значения доступны в личном кабинете, в разделе «Ресурсы» → «Параметры».
Адрес https://api.multifactor.ru/access/requests | метод POST.
Пример запроса:
{
"identity": "user@example.com", //логин пользователя
"email": "user@example.com", //e-mail, необязательно
"phone": null, //телефон, необязательно
"language": null, //язык: ru/en, по умолчанию ru
"claims": //произвольный набор параметров
{
"param1": "value1",
"param2": "value2",
},
"callback": //адрес возврата пользователя
{
"action": "https://example.com/mf/callback",
"target": "_self"
}
}
Параметр |
Формат |
Описание |
|---|---|---|
identity |
Любой |
Уникальный идентификатор пользователя в Вашей системе |
claims |
JSON |
Произвольные параметры |
callback.action |
URL |
Адрес на Вашем сайте для возврата пользователя после успешной аутентификации |
callback.target |
_self |
Для размещения страницы доступа в iframe |
resourceId |
UUID |
Идентификатор ресурса из Вашего личного кабинета |
resourceName |
Любой |
Наименование ресурса |
Пример ответа:
{
"model":
{
"id":"620UNJe", //id запроса
"url":"https://access.multifactor.ru/620UNJe" //адрес станицы доступа
},
"success":true,
"message":null
}
История запросов доступа
Функция для получения истории запросов доступа пользователей.
Доступ к API
Для получения истории запросов доступа необходимо включить расширенное API в личном кабинете, в разделе «Настройки API» и использовать API Key и API Secret, предоставленные в разделе.
Адрес https://api.multifactor.ru/access/requests | метод GET.
Параметры запроса:
Параметр |
Формат |
Назначение |
|---|---|---|
createdAt |
YYYY-MM-DD |
Дата или диапазон дат. |
identity |
Строка |
Фильтр по логину (пример: user); |
offset |
Число |
Сдвиг окна (пример: 250) |
limit |
Число |
Ширина окна (максимум: 1000) |
resourceId |
UUID |
Идентификатор ресурса из Вашего личного кабинета; |
resourceName |
Строка |
Наименование ресурса |
Важно: Не рекомендуется использовать одновременно resourceId и resourceName в одном запросе.
Все эти значения можно комбинировать между собой и использовать несколько одинаковых:
Пример комбинирования параметров:
{
"Identity": "user1",
"Identity": "user2",
"Identity": "user3",
"ResourceName": "VPN",
"ResourceName": "SSH"
}
Так мы найдём все запросы, которые пользователи user1, user2, user3 создавали к ресурсу VPN ИЛИ SSH.
Пример с параметром CreatedAt:
{
"Identity": "user1",
"Identity": "user2",
"Identity": "user3",
"ResourceName": "VPN",
"ResourceName": "SSH",
"CreatedAt": "2023-11-11",
"CreatedAt": "2023-12-10"
}
Если передать один параметр CreatedAt, то будет поиск за конкретно этот день, если передать два параметра CreatedAt, то за диапазон между этими параметрами. В обоих случаях применяется часовой пояс проекта, что задаётся Вашем личном кабинете.
Примеры запросов:
GET https://api.multifactor.ru/access/requests?createdAt=2023-02-02
GET https://api.multifactor.ru/access/requests?createdAt=2023-02-02&identity=user&offset=0&limit=1
Пример ответа:
{
"model":
{
"data":
[
{
"id": "MuNG3Ed", //id
"identity": "user", //логин (субъект доступа)
"status": "Granted", //статус запроса
"resourceName": "Cisco ASA", //ресурс (объект доступа)
"createdAt": "2023-02-02T20:48:52.4010000Z", //время создания запроса
"grantedAt": "2023-02-02T20:48:56.8400000Z", //время подтверждения запроса
"authenticator": "Telegram", //аутентификатор
"countryCode": "RU", //гео: код страны
"region": "Красноярский край", //гео: регион
"city": "Красноярск", //гео: город
"remoteHost": "10.10.10.10", //ip пользователя или имя хоста
"ip" : "10.10.10.10", //ip пользователя
"twoFADeviceIp": "192.168.1.1" //ip устройства, с которого был подтвержден второй фактор (кроме Telegram)
}
],
"offset": 0,
"limit": 1,
"totalElements": 1
},
"success": true,
"message": null
}
Получение информации о конкретном запросе
V2
Адрес https://api.multifactor.ru/api/v2/access/requests/{requestId}| метод GET
Параметры:
| Параметр | Обязательный | Формат | Описание |
|---|---|---|---|
| requestId | Да | Строка | ID запроса доступа |
Рекомендации по использованию
- Для работы с историей запросов предварительно активируйте расширенное API в личном кабинете
- Используйте либо resourceId, либо resourceName для фильтрации, но не оба одновременно
- Максимальный limit для запросов истории — 1000 записей
- Все параметры запроса не являются обязательными. Если параметры не указаны, API возвращает 50 самых последних записей о доступе.