Перейти к основному содержимому
Версия: 1.5.0

Операции с рисками

Управление рисками

Управление рисками включает определение, оценку и контроль воздействий внешних факторов, а также выявление предумышленных атак, которые могут негативно повлиять на внедрение и работу BAF на ресурсе заказчика.

Атаки на систему выявляются с помощью проверок velocity checks, которые позволяют отслеживать количество повторений элементов данных транзакции за определенные временные интервалы, а также количество аномалий или сходства с поведением мошенников.

По умолчанию BAF отслеживает и фиксирует все случившиеся риски. Чтобы возникший риск повлиял на ход верификации (например, произошла блокировка аппликанта при массовой атаке), включите активность риска.

RiskTypeRiskLevelЗначенияУсловия
0MassAttackSignificantClientIpПревышение числа запросов верификации, отправленных после определенной даты (текущая дата минус длительность периода) c IP-адреса.

Параметры: Period — период, по умолчанию равен TimeSpan("01:00:00"), Count — количество запросов, по умолчанию равно 3.

Риск срабатывает, если с одного IP-адреса пришло больше 3 запросов в течение одного часа, считая от текущего запроса.

1PeriodicAttackModerateValidationRequestId BrowserInfo CanvasInfo FontsInfo Html5Info WebGlInfoНаличие запросов верификации аппликанта с отличающимся ValidationRequestId и совпадающим отпечатком устройства.

Отпечаток: для WebLib — хэш значения параметров браузера.

6DuplicateFaceSignificantFaceImageBase64Наличие зарегистрированного аппликанта с коэффициентом совпадения лица выше значения параметра.

Параметры: FaceValidationPercent

7InconsistentMetadataSignificantPhone county TimeZoneПри проверке были обнаружены несоответствия в метаданных клиента.

Возможные несоответствия:

  • Страна телефона - страна номера телефона не совпадает со страной Ip клиента. — TimeZone — часовой пояс на клиентском устройстве не совпадает с часовым поясом clientIp.
8MissingMetadataModerateClientIp TimeZoneВ метаданных попытки проверки отсутствуют данные.

Возможные недостающие данные:

  • ClientIp - ip адрес внешнего клиента
  • TimeZone - часовой пояс на клиентском устройстве
9UntrustedIpModerateClientIpIP при регистрации не совпадает с последующими авторизациями.

Получение списка рисков

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

Эндпоинт GET /publicapi/api​/v2​/private​/RiskEvents

Параметры:

Название поляОписаниеЗначение
PageНомер страницыОт 1 до 2147483647
PageSizeМаксимальное количество аппликантов на страницеОт 1 до 400

Для поиска и сортировки можно использовать следующие необязательные поля:

Название поляОписание
CreatedFromНижняя граница даты: дд-мм-гггг
CreatedToВерхняя граница даты: дд-мм-гггг
SortFieldПоле для сортировки. Можно указать firstName, lastName, phone и т.д.
OrderПорядок сортировки для выбранного поля. Для порядка по убыванию укажите значение: descending. Порядок по возрастанию задан по умолчанию.
TextFilterТекстовый поиск.
LevelУровень риска. Значения 0 или 1
TypeТип риска: 0, 1, 6

Пример запроса:

curl -X 'GET' \
'https://baf.3divi.ai/publicapi/api/v2/private/RiskEvents?Page=1&PageSize=10' \
-H 'accept: text/plain' \
-H 'Authorization: Bearer sk_3938ab7b-cdbf-4a1a-952b-e3782f061f4b'

Пример ответа:

Status Code200
{
"page": 0,
"pageSize": 0,
"total": 0,
"totalPages": 0,
"items": [
{
"id": "3fa85***", // ID риска
"validationResponseId": 0,
"validationRequestId": "3fa85***",
"level": 0,
"type": 0,
"created": "2023-09-20T10:45:37.851Z"
}
]
}

Возможные ошибки:

CodeMessageDescriptionCode
400No sorting by selected property.Wrong sorting field selected120026

Получение списка типов отслеживаемых рисков

Запрос возвращает список доступных в системе типов рисков и их статусы.

Эндпоинт GET /publicapi/api​/v2​/private​/RiskManagement/ActiveRisks

Пример запроса:

curl -X 'GET' \
'https://baf.3divi.ai/publicapi/api/v2/private/RiskManagement/ActiveRisks' \
-H 'accept: text/plain' \
-H 'Authorization: Bearer sk_3938***'

Пример ответа:

Status Code200
[
{
"riskType": 0,
"description": "Mass Attack",
"isActive": false
},
{
"riskType": 1,
"description": "Periodic Attack",
"isActive": false
},
{
"riskType": 6,
"description": "Duplicate Face",
"isActive": false
}
]

Включение/отключение активности рисков

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

Эндпоинт PUT /publicapi/api​/v2​/private​/RiskManagement/ActiveRisks

Тело запроса:

[
0,1,6
]

Пример запроса:

curl -X 'PUT' \
'https://baf.3divi.ai/publicapi/api/v2/private/RiskManagement/ActiveRisks' \
-H 'accept: */*' \
-H 'Authorization: Bearer sk_3938ab7b-cdbf-4a1a-952b-e3782f061f4b' \
-H 'Content-Type: application/json' \
-d '[
0,1,6
]'

Пример ответа:

Status Code200