API «Weblock.»

API обеспечивает интеграцию «Weblock.» с другими системами.

Server URL (базовый путь): http://waf.weblock.ru:1080/

Для работы с API потребуется AccessToken, который генерируется эндпоинтом oidc/oauth2/token.

Примечание

Все значения типа string имеют максимальную длину 250 символов.


Эндпоинты oauth2

Параметр заголовка Content-Type: application/json

Получение AccessToken - token

Генерация токена доступа.

POST: oidc/oauth2/token

Параметр тела запроса

Тип данных

Обязательность

Описание

grant_type

string

*

Тип доступа

client_id

string

*

Идентификатор пользователя

username

string

*

Имя пользователя

password

string

*

Пароль пользователя

client_secret

string

*

Одноразовый пароль пользователя

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

{
    "grant_type": "password",
    "client_id": "waf-oidc",
    "username": "admin",
    "password": "Waf12345!",
    "client_secret": "secret"
}

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

Тип данных

Обязательность

Описание

access_token

string

*

Токен доступа

200 OK

Пример ответа: "access_token": "eyJraWQiOiIwODM4MTAzZC1hZmM4LTRi"

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Эндпоинты clusters

Параметры заголовка:

Authorization: Bearer $AccessToken

Content-Type: application/json

Пример.

--header 'authorization: Bearer eyJraWQiOiIwODM4MTAzZC1hZmM4LTRi'

Конец примера.

$AccessToken генерируется эндпоинтом oidc/oauth2/token «Получение AccessToken».

Чтение данных кластеров - clusters

Чтение данных всех кластеров, в том числе идентификаторов кластеров и серверов. Чтение данных кластеров для заданного тенанта, либо для всех тенантов.

GET: controller/v1/clusters

Query-параметр запроса

Тип данных

Обязательность

Описание

tenantId

string

-

Идентификатор тенанта

Пример.

controller/v1/clusters

или

controller/v1/clusters?tenantId=TENANT_A

где TENANT_A - ID тенанта.

Конец примера.

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

integer

-

Идентификатор кластера

clusterName

string

-

Имя кластера

passiveMode

boolean

-

Флаг активности

tenantId

string

-

Идентификатор тенента

servers

object[]

-

Данные серверов

modsecurityConfigurations

object[]

-

Конфигурация правил

allowedKeys

string[]

-

Ключи доступа

licenceId

integer

-

Идентификатор лицензии

agentApplied

boolean

-

Флаг агента

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

[ {
    "id": 0,
    "clusterName": "string",
    "passiveMode": true,
    "tenantId": "string",
    "servers": [ {
        "serverIndex": 1,
        "serverName": "server name",
        "modsec": {
            "passiveMode": true,
            "skipModSecurity": true,
            "configs": [ {
              "id": 0,
              "name": "string"
            } ]
        },
        "antiDdos": {
            "mode": "DISABLED",
            "initialScore": 0,
            "cost": 0,
            "postCost": 0,
            "patchCost": 0,
            "putCost": 0,
            "deleteCost": 0,
            "otherCost": 0,
            "errorCost": 0
        },
        "settings": {
            "logLevel": "INFO",
            "logBanlimBlockedRequests": true
        },
        "failToBanConfigurations": [ {
            "id": 1,
            "key": "string",
            "rejectCount": 10,
            "rejectCountStrict": 5,
            "banTime": 0,
            "antiDdosScoreExceedCountStrict": 0,
            "antiDdosScoreExceedCountBan": 0,
            "antiDdosNewCookieStrict": 0,
            "antiDdosNewCookieBan": 0
        } ],
        "requestsLimitConfigurations": [ {
            "id": 0,
            "key": "string",
            "rate": 0,
            "burst": 0,
            "delay": 0,
            "dryRun": true,
            "statusCode": 0
        } ],
        "locations": [ {
            "locationIndex": 0,
            "path": "string",
            "captcha": true,
            "proxyPass": true,
            "captchaValidator": true,
            "antiDdos": {
                "cost": 0,
                "postCost": 0,
                "patchCost": 0,
                "putCost": 0,
                "deleteCost": 0,
                "otherCost": 0,
                "errorCost": 0
            },
            "modsec": {
                "skipModSecurity": true,
                "passiveMode": true
            },
            "requestsLimitConfigurations": [ {
                "id": 0,
                "key": "string",
                "rate": 0,
                "burst": 0,
                "delay": 0,
                "dryRun": true,
                "statusCode": 0
            } ]
        } ]
    } ],
    "modsecurityConfigurations": [ {
        "id": 0,
        "name": "string"
    } ],
    "allowedKeys": ["string"],
    "licenceId": 0,
    "agentApplied": true
} ]

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Настройка уровня фиксации - clusters/{clusterId}/server/{serverIndex}/configuration

Фиксация критичных сообщений.

POST: controller/v1/clusters/{clusterId}/server/{serverIndex}/configuration

Параметр адресной строки запроса

Тип данных

Обязательность

Описание

clusterId

integer

*

Идентификатор кластера

serverIndex

integer

*

Идентификатор сервера

Параметр тела запроса

Тип данных

Обязательность

Описание

logBanlimBlockedRequests

boolean

*

Флаг логирования запросов, заблокированных функционалом «F2B» и «Лимиты»

logLevel

enum

-

Уровень фиксации. Перечень значений: EMERGENCY, ALERT, CRITICAL, ERROR, WARNING, NOTICE, INFO, DEBUG

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

{
    "logBanlimBlockedRequests": true,
    "logLevel": "ERROR"
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

logLevel

enum

-

Уровень фиксации. Перечень значений: EMERGENCY, ALERT, CRITICAL, ERROR, WARNING, NOTICE, INFO, DEBUG

logBanlimBlockedRequests

boolean

-

Флаг логирования запросов, заблокированных функционалом «F2B» и «Лимиты»

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

{
    "logLevel": "ERROR",
    "logBanlimBlockedRequests": true
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Эндпоинты logs

Параметры заголовка:

Authorization: Bearer $AccessToken

Content-Type: application/json

Пример.

--header 'authorization: Bearer eyJraWQiOiIwODM4MTAzZC1hZmM4LTRi'

Конец примера.

$AccessToken генерируется эндпоинтом oidc/oauth2/token «Получение AccessToken».

Получение отчета - logs/intervention/report

Формирование и получение отчета.

POST: controller/v1/logs/intervention/report

Параметр тела запроса

Тип данных

Обязательность

Описание

clusterId

integer

*

Идентификатор кластера

filters

object[][]

-

Фильтры

filters.field

enum

-

Поле. Перечень значений: clusterId, clusterName, instanceId, serverId, requestId, clientIp, hostname, timestamp, isBlocked, maxSeverity, minSeverity, severity, ruleId, uri, statusCode, tags.

filters.value

string

-

Значение

filters.operator

enum

-

Оператор. Перечень значений: contains, equal, greater, greaterEqual, less, lessEqual, notContains.

orders

object[]

-

Сортировка результата

orders.field

enum

-

Поле. Перечень значений: clusterId, clusterName, instanceId, serverId, requestId, clientIp, hostname, timestamp, isBlocked, maxSeverity, minSeverity, severity, ruleId, uri, statusCode, tags.

orders.direction

enum

-

Вид сортировки. Перечень значений: ASC, DESC.

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

{
    "clusterId": 0,
    "filters": [
        [
            {
                "field": "clusterName",
                "value": "string",
                "operator": "equal"
            }
        ]
    ],
    "orders": [
        {
            "field": "clusterName",
            "direction": "ASC"
        }
    ]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

instanceId

string

-

Идентификатор инстанса

serverId

integer

-

Идентификатор сервера

requestId

string

-

Идентификатор запроса

hostname

string

-

IP-адрес хоста

clientIp

string

-

IP-адрес клиента

interventions

object[]

-

Данные атак

interventions.id

integer

-

Идентификатор атаки

interventions.statusCode

integer

-

Код статуса

interventions.ruleId

integer

-

Идентификатор правила

interventions.timestamp

integer

-

Дата, время

interventions.rev

string

-

-

interventions.message

string

-

Информация

interventions.data

string

-

Тело атаки

interventions.severity

integer

-

Критичность (фактор риска)

interventions.ver

string

-

Версия защиты от атак

interventions.maturity

integer

-

Уровень зрелости

interventions.accuracy

integer

-

Точность

interventions.uri

string

-

URI запроса

interventions.passive

boolean

-

Режим работы правил ModSecurity

interventions.tags

string[]

-

Список тегов

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

[
    {
        "instanceId": "string",
        "serverId": 0,
        "requestId": "string",
        "hostname": "string",
        "clientIp": "string",
        "interventions": [
            {
                "id": 0,
                "statusCode": 0,
                "ruleId": 0,
                "timestamp": 0,
                "rev": "string",
                "message": "string",
                "data": "string",
                "severity": 0,
                "ver": "string",
                "maturity": 0,
                "accuracy": 0,
                "uri": "string",
                "passive": true,
                "tags": ["string"]
            }
        ]
    }
]

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Эндпоинты users

Параметры заголовка:

Authorization: Bearer $AccessToken

Content-Type: application/json

Пример.

--header 'authorization: Bearer eyJraWQiOiIwODM4MTAzZC1hZmM4LTRi'

Конец примера.

$AccessToken генерируется эндпоинтом oidc/oauth2/token «Получение AccessToken».

Коды ролей и разрешений

Код роли применяется в API. По умолчанию задано три роли: Администратор, Оператор, Просмотр.

Роль

Код роли

Администратор

ROLE_ADMIN

Оператор

ROLE_OPERATOR

Просмотр

ROLE_READ_ONLY

Каждой роли назначается разрешение. Существует ограничение назначений разрешений для роли. Пользователь не сможет быть добавлен в тенант, если его роли назначено хотя бы одно из следующих разрешений:

  • ROLE_EDIT – Администрирование ролей,

  • TENANT_EDIT – Администрирование тенантов.

Если назначены нижеследующие разрешения, роль считается ролью администратора:

  • USER_ADMIN – Администрирование учетной записи пользователя,

  • ROLE_EDIT – Администрирование ролей.

Коды разрешений для API.

Метод

Эндпоинт

USER_ADMIN (код разрешения).

Администрирование учетной записи пользователя. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

POST

/api/v1/users

POST

/api/v1/users/create

GET

/api/v1/users/{id}

POST

/api/v1/users/update

PATCH

/api/v1/users/{id}/password

POST

/api/v1/users/disable

POST

/api/v1/users/enable

POST

/api/v1/users/delete

POST

/api/v1/users/mfa-disable

USER_SEARCH (код разрешения).

Список пользователей. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

POST

/api/v1/users

ROLE_EDIT (код разрешения).

Администрирование ролей. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

GET

/api/v1/roles

GET

/api/v1/roles/actions

POST

/api/v1/roles/create

POST

/api/v1/roles/update

DELETE

/api/v1/roles/delete/{id}

ROLE_VIEW (код разрешения).

Просмотр ролей и разрешений. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

GET

/api/v1/roles

GET

/api/v1/roles/actions

USER_SESSION_VIEW (код разрешения).

Просмотр истории сессии пользователя. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

GET

/api/v1/sessions

SELF_MANAGEMENT (код разрешения).

Изменение собственного профиля пользователя. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

POST

/api/v1/users/current

PATCH

/api/v1/users/current/password

PATCH

/api/v1/users/current/mfa/generate

PATCH

/api/v1/users/current/mfa/enable

PATCH

/api/v1/users/current/mfa/disable

POST

/api/v1/users/generate-token

DELETE

/api/v1/users/delete-token/{id}

CLUSTER_ADMIN (код разрешения).

Администрирование кластеров. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

GET

/v1/instances

GET

/v1/instances/{instanceId}

GET

/v1/clusters

GET

/v1/clusters/{clusterId}

GET

/v1/clusters/{clusterId}/modsec

GET

/v1/clusters/{clusterId}/server/{serverIndex}

GET

/v1/clusters/{clusterId}/server/{serverIndex}/modsec

GET

/v1/clusters/{clusterId}/server/{serverIndex}/fail_to_ban

GET

/v1/configurations/modsec/{configId}

GET

/v1/configurations/modsec/{configId}/settings

GET

/v1/ml/instances

GET

/v1/ml/clusters

POST

/v1/clusters

DELETE

/v1/clusters/{clusterId}

DELETE

/v1/clusters/{clusterId}/server/{serverIndex}

POST

/v1/clusters/{clusterId}/mode

GET

/v1/clusters/{clusterId}/modsec/{ruleId}

GET

/v1/clusters/{clusterId}/server/{serverIndex}/requests-limit

GET

/v1/clusters/{clusterId}/server/{serverIndex}/location/{locationIndex}/requests-limit

POST

/v1/user-service/token

GET

/v1/user-service/token/check

CLUSTER_VIEW (код разрешения).

Просмотр кластеров. По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

GET

/v1/instances

GET

/v1/instances/{instanceId}

GET

/v1/clusters

GET

/v1/clusters/{clusterId}

GET

/v1/clusters/{clusterId}/modsec

GET

/v1/clusters/{clusterId}/server/{serverIndex}

GET

/v1/clusters/{clusterId}/server/{serverIndex}/modsec

GET

/v1/clusters/{clusterId}/server/{serverIndex}/fail_to_ban

GET

/v1/configurations/modsec/{configId}

GET

/v1/configurations/modsec/{configId}/settings

GET

/v1/ml/instances

GET

/v1/ml/clusters

GET

/v1/clusters/{clusterId}/modsec/{ruleId}

GET

/v1/clusters/{clusterId}/server/{serverIndex}/requests-limit

GET

/v1/clusters/{clusterId}/server/{serverIndex}/location/{locationIndex}/requests-limit

CLUSTER_USER_EDIT (код разрешения).

Администрирование доступа пользователей к кластеру. По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

GET

/v1/clusters/{clusterId}/users

POST

/v1/clusters/{clusterId}/add-users

POST

/v1/clusters/{clusterId}/remove-users

CLUSTER_USER_VIEW (код разрешения).

Просмотр доступа пользователей к кластеру. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

GET

/v1/clusters/{clusterId}/users

CLUSTER_ML_MANAGE (код разрешения).

Администрирование ML-модуля. По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/ml/clusters/{clusterId}/force-start-learning

POST

/v1/ml/clusters/{clusterId}/force-switch-predict

CLUSTER_MODSEC_EDIT (код разрешения). Для работы с API желательно вместе с данным разрешением подключать CLUSTER_MODSEC_VIEW.

Администрирование правил ModSecurity. По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/clusters/{clusterId}/modsec

POST

/v1/clusters/{clusterId}/modsec/send

POST

/v1/clusters/{clusterId}/modsec/{ruleId}

DELETE

/v1/clusters/{clusterId}/modsec/{ruleId}

POST

/v1/clusters/{clusterId}/server/{serverIndex}/modsec

POST

/v1/configurations/modsec/{configId}

DELETE

/v1/configurations/modsec/{configId}

POST

/v1/configurations/modsec/{configId}/add

GET

/v1/configurations/modsec/{configId}/rules

POST

/v1/configurations/modsec/{configId}/rules/{index}

DELETE

/v1/configurations/modsec/{configId}/rules/{index}

DELETE

/v1/configurations/modsec/{configId}/settings

CLUSTER_MODSEC_VIEW (код разрешения).

Просмотр правил ModSecurity. По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

GET

/v1/configurations/modsec/{configId}/rules

GET

/v1/clusters/{clusterId}/modsec/raw

CLUSTER_CRS_EDIT (код разрешения).

Установка базового набора правил ModSecurity. По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/clusters/{clusterId}/modsec/setup_crs

CLUSTER_SERVER_EDIT (код разрешения). Для работы с API желательно вместе с данным разрешения подключать CLUSTER_VIEW.

Настройки защиты сервера кластера: «ModSec», «Анти-DDoS», «Лимиты». По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/clusters/{clusterId}/server/{serverIndex}/anti-ddos

GET

/v1/clusters/{clusterId}/server/{serverIndex}/anti-ddos

POST

/v1/clusters/{clusterId}/server/{serverIndex}/location/{{locationIndex}}/anti-ddos

GET

/v1/clusters/{clusterId}/server/{serverIndex}/location/{{locationIndex}}/anti-ddos

GET

/v1/clusters/{clusterId}/server/{serverIndex}/locations

GET

/v1/clusters/{clusterId}/server/{serverIndex}/location/{{locationIndex}}/modsec-config

POST

/v1/clusters/{clusterId}/server/{serverIndex}/location/{{locationIndex}}/modsec-config

GET

/v1/clusters/{clusterId}/server/{serverIndex}/modsec-config

POST

/v1/clusters/{clusterId}/server/{serverIndex}/modsec-config

GET

/v1/clusters/{clusterId}/server/{serverIndex}/configuration

POST

/v1/clusters/{clusterId}/server/{serverIndex}/configuration

POST

/v1/clusters/{clusterId}/server/{serverIndex}/requests-limit/add

POST

/v1/clusters/{clusterId}/server/{serverIndex}/location/{locationIndex}/requests-limit/add

POST

/v1/clusters/{clusterId}/server/{serverIndex}/requests-limit

POST

/v1/clusters/{clusterId}/server/{serverIndex}/location/{locationIndex}/requests-limit

DELETE

/v1/clusters/{clusterId}/server/{serverIndex}/requests-limit/{key}

DELETE

/v1/clusters/{clusterId}/server/{serverIndex}/location/{locationIndex}/requests-limit/{key}

CLUSTER_FAIL_TO_BAN_EDIT (код разрешения). Для работы с API желательно вместе с данным разрешением подключать CLUSTER_VIEW.

Настройка защиты сервера кластера: «F2b». По умолчанию назначается Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/clusters/{clusterId}/server/{serverIndex}/fail_to_ban/add

POST

/v1/clusters/{clusterId}/server/{serverIndex}/fail_to_ban

DELETE

/v1/clusters/{clusterId}/server/{serverIndex}/fail_to_ban/{key}

PATTERNS_EDIT (код разрешения).

Администрирование паттернов. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

PATCH

/api/v1/patterns/update

POST

/api/v1/patterns

DELETE

/api/v1/patterns/{patternId}

GET

/api/v1/patterns

GET

/api/v1/patterns/all

PATTERNS_VIEW (код разрешения).

Просмотр паттернов. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

GET

/api/v1/patterns

GET

/api/v1/patterns/all

TENANT_EDIT (код разрешения).

Администрирование тенантов. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

GET

/api/v1/tenants

POST

/api/v1/tenants/create

POST

/api/v1/tenants/update

POST

/api/v1/tenants/{id}/add-users

POST

/api/v1/tenants/{id}/remove-users

GET

/api/v1/tenants/{id}/users

PATCH

/v1/clusters/tenant/set

PATCH

/v1/clusters/tenant/remove

TENANT_VIEW (код разрешения).

Просмотр списка тенантов. По умолчанию назначается Администратору. Доступны следующие эндпоинты:

GET

/api/v1/tenants

INTERVENTION_VIEW (код разрешения).

Просмотр таблицы атак. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

GET

/v1/logs/intervention

GET

/v1/logs/request

INTERVENTION_DASHBOARD_VIEW (код разрешения).

Просмотр графиков атак. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/dashboard/counter

POST

/v1/dashboard/severity

POST

/v1/dashboard/popular_ip

POST

/v1/dashboard/popular_attack_type

INTERVENTION_REPORT_VIEW (код разрешения).

Просмотр отчетов. По умолчанию назначается Просмотру, Оператору, Администратору. Доступны следующие эндпоинты:

POST

/v1/logs/intervention/report

Примечание

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

Создание пользователя - users/create

Создание учетной записи пользователя с заданными параметрами.

POST: oidc/api/v1/users/create

Параметр тела запроса

Тип данных

Обязательность

Описание

id

string

*

Логин (идентификатор) пользователя (начинается с буквы и содержит 3 или более символа)

password

string

*

Пароль пользователя (ограничения указаны после таблицы)

enabled

boolean

-

Активирован пользователь или нет

notificationEnabled

boolean

-

Флаг подключения уведомлений

firstName

string

*

Имя пользователя (начинается с буквы и содержит 3 или более символа)

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

roles

string[]

*

Роли пользователя

tenants

string[]

-

Тенанты пользователя

Пароль должен содержать:

  • всего 6 или более символов,

  • хотя бы один специальный символ @ # ( ) ! $ % ^ *

  • хотя бы одну заглавную (большую) русскую или английскую букву,

  • хотя бы одну строчную (маленькую) русскую или английскую букву,

  • хотя бы одну цифру.

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

{
    "id": "string",
    "password": "string",
    "enabled": true,
    "notificationEnabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "tenants": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Удаление пользователей - users/delete

Удаление учетной записи пользователя.

POST: oidc/api/v1/users/delete

Параметр тела запроса

Тип данных

Обязательность

Описание

userIds

string[]

*

Список логинов (идентификаторов) пользователей

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

{
    "userIds": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

[
    {
        "id": "string",
        "enabled": true,
        "firstName": "string",
        "lastName": "string",
        "position": "string",
        "email": "string",
        "mfaEnabled": true,
        "notificationEnabled": true,
        "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
        "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
        "tenants": ["string"],
        "tokens": "[{\"id\": 1, \"name\": tokenName}]"
    }
]

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Активация пользователей - users/enable

Активация одного или нескольких пользователей; при этом параметр enable преобразуется из false в true.

POST: oidc/api/v1/users/enable

Параметр тела запроса

Тип данных

Обязательность

Описание

userIds

string[]

*

Список логинов (идентификаторов) пользователей

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

{
    "userIds": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя «true»

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

[
    {
        "id": "string",
        "enabled": true,
        "firstName": "string",
        "lastName": "string",
        "position": "string",
        "email": "string",
        "mfaEnabled": true,
        "notificationEnabled": true,
        "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
        "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
        "tenants": ["string"],
        "tokens": "[{\"id\": 1, \"name\": tokenName}]"
    }
]

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Деактивация пользователей - users/disable

Деактивация одного или нескольких пользователей; при этом параметр enable преобразуется из true в false.

POST: oidc/api/v1/users/disable

Параметр тела запроса

Тип данных

Обязательность

Описание

userIds

string[]

*

Список логинов (идентификаторов) пользователей

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

{
    "userIds": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя «false»

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

[
    {
        "id": "string",
        "enabled": false,
        "firstName": "string",
        "lastName": "string",
        "position": "string",
        "email": "string",
        "mfaEnabled": true,
        "notificationEnabled": true,
        "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
        "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
        "tenants": ["string"],
        "tokens": "[{\"id\": 1, \"name\": tokenName}]"
    }
]

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Чтение параметров пользователей - users

Чтение данных учетных записей пользователей.

POST: oidc/api/v1/users

Параметр тела запроса

Тип данных

Обязательность

Описание

excludeTenantRestricted

boolean

-

Флаг исключения Ограничения тенанта

filters

object[]

*

Список фильтров

filters.field

string

*

Поле

filters.operator

enum

*

Оператор. Перечень значений: contains, equal, greater, greaterEqual, less, lessEqual, notContains.

filters.value

string

*

Значение

orders

object[]

*

Сортировка

orders.field

enum

*

Поле. Перечень значений: userName, email, firstName, lastName, position, enabled, mfaEnabled, notificationEnabled, roles, tenants, tokens.

orders.direction

enum

*

Вид сортировки. Перечень значений: ASC, DESC.

page

object

*

Данные страницы

page.number

integer

-

Номер страницы

page.size

integer

-

Количество элементов на странице

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

{
    "excludeTenantRestricted": true,
    "filters": [
      [
        {
            "field": "string",
            "operator": "contains",
            "value": "string"
        }
      ]
    ],
    "orders": [
      {
          "field": "userName",
          "direction": "ASC"
      }
    ],
    "page": {
        "number": 1,
        "size": 1
    }
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

totalPages

integer

-

Общее количество страниц

totalElements

integer

-

Общее количество элементов

size

integer

-

Количество элементов на странице (размер страницы)

content

object[]

-

Содержимое элемента

content.id

string

-

Идентификатор пользователя

content.enabled

boolean

-

Флаг активности пользователя

content.firstName

string

-

Имя пользователя

content.lastName

string

-

Фамилия пользователя

content.position

string

-

Должность пользователя

content.email

string

-

Email пользователя

content.mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

content.notificationEnabled

boolean

-

Флаг подключения уведомлений

content.roles

string[]

-

Роли пользователя

content.actions

string[]

-

Список доступных разрешений пользователя

content.tenants

string[]

-

Тенанты пользователя

content.tokens

string

-

Токены пользователя

number

integer

-

Номер страницы

sort

object

-

Флаг сортировки

sort.empty

boolean

-

Флаг пустого отбора при сортировке

sort.unsorted

boolean

-

Флаг неучастия в отборе

sort.sorted

boolean

-

Флаг участия в отборе

first

boolean

-

Флаг первой страницы

last

boolean

-

Флаг последней страницы

numberOfElements

integer

-

Номер элемента

pageable

object

-

Данные постранично

pageable.offset

integer

-

Смещение размера страницы относительно размера базовой страницы

pageable.sort

object

-

Флаг сортировки

pageable.sort.empty

boolean

-

Флаг пустого отбора при сортировке

pageable.sort.unsorted

boolean

-

Флаг неучастия в отборе

pageable.sort.sorted

boolean

-

Флаг участия в отборе

pageable.paged

boolean

-

Флаг наличия информации о нумерации страницы

pageable.unpaged

boolean

-

Флаг отсутствия информации о нумерации страницы

pageable.pageNumber

integer

-

Номер страницы

pageable.pageSize

integer

-

Количество элементов на странице

empty

boolean

-

Флаг пустого отбора

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

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

{
    "totalPages": 1,
    "totalElements": 1,
    "size": 1,
    "content": [
        {
            "id": "string",
            "enabled": true,
            "firstName": "string",
            "lastName": "string",
            "position": "string",
            "email": "string",
            "mfaEnabled": true,
            "notificationEnabled": true,
            "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
            "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
            "tenants": ["string"],
            "tokens": "[{\"id\": 1, \"name\": tokenName}]"
            }
    ],
    "number": 1,
    "sort": {
        "empty": false,
        "unsorted": false,
        "sorted": true
    },
    "numberOfElements": 1,
    "pageable": {
        "offset": 0,
        "sort": {
            "empty": false,
            "unsorted": false,
            "sorted": true
        },
        "pageNumber": 1,
        "pageSize": 1,
        "unpaged": false,
        "paged": true
    },
    "first": true,
    "last": true,
    "empty": false
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Изменение параметров пользователя - users/update

Изменение учетной записи пользователя.

POST: oidc/api/v1/users/update

Параметр тела запроса

Тип данных

Обязательность

Описание

id

string

*

Логин (идентификатор) пользователя (начинается с буквы и содержит 3 или более символа)

password

string

*

Пароль пользователя (ограничения указаны после таблицы)

enabled

boolean

-

Активирован пользователь или нет

notificationEnabled

boolean

-

Флаг подключения уведомлений

firstName

string

*

Имя пользователя (начинается с буквы и содержит 3 или более символа)

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

roles

string[]

*

Роли пользователя

tenants

string[]

-

Тенанты пользователя

Пароль должен содержать:

  • всего 6 или более символов,

  • хотя бы один специальный символ @ # ( ) ! $ % ^ *

  • хотя бы одну заглавную (большую) русскую или английскую букву,

  • хотя бы одну строчную (маленькую) русскую или английскую букву,

  • хотя бы одну цифру.

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

{
    "id": "string",
    "password": "string",
    "enabled": true,
    "notificationEnabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "admin@weblock.su",
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "tenants": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Чтение параметров текущего пользователя - users/current

Чтение данных учетной записи текущего пользователя.

GET: oidc/api/v1/users/current

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Изменение параметров текущего пользователя - users/current

Изменение данных учетной записи текущего пользователя.

POST: oidc/api/v1/users/current

Параметр тела запроса

Тип данных

Обязательность

Описание

id

string

*

Логин (идентификатор) пользователя

currentPassword

string

*

Пароль пользователя

enabled

boolean

-

Активирован пользователь или нет

notificationEnabled

boolean

-

Флаг подключения уведомлений

firstName

string

*

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

roles

string[]

*

Роли пользователя

tenants

string[]

-

Тенанты пользователя

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

{
    "id": "string",
    "currentPassword": "string",
    "enabled": true,
    "notificationEnabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "tenants": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Изменение пароля заданного пользователя - users/{id}/password

Изменение пароля пользователя для входа в Личный кабинет.

PATCH: oidc/api/v1/users/{id}/password

Параметр адресной строки запроса

Тип данных

Обязательность

Описание

id

string

*

Логин (идентификатор) пользователя

Параметр тела запроса

Тип данных

Обязательность

Описание

newPassword

string

*

Новый пароль

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

{
    "newPassword": "string"
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Изменение пароля текущего пользователя - users/current/password

Изменение пароля для входа в Личный кабинет для текущего пользователя.

PATCH: oidc/api/v1/users/current/password

Параметр тела запроса

Тип данных

Обязательность

Описание

currentPassword

string

*

Текущий пароль пользователя

newPassword

string

*

Новый пароль пользователя

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

{
    "currentPassword": "string",
    "newPassword": "string"
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Чтение параметров заданного пользователя - users/{id}

Чтение данных учетной записи пользователя.

GET: oidc/api/v1/users/{id}

Параметр адресной строки запроса

Тип данных

Обязательность

Описание

id

string

*

Логин (идентификатор) пользователя

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

boolean

-

Флаг двухфакторной аутентификации

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Подключение двухфакторной аутентификации для текущего пользователя - users/current/mfa/generate

Подключение двухфакторной аутентификации для последующего входа текущего пользователя в Личный кабинет. Получение QR-кода для подключения генератора одноразовых паролей.

PATCH: oidc/api/v1/users/current/mfa/generate

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

user.id

string

-

Идентификатор пользователя

user.enabled

boolean

-

Флаг активности пользователя

user.firstName

string

-

Имя пользователя

user.lastName

string

-

Фамилия пользователя

user.position

string

-

Должность пользователя

user.email

string

-

Email пользователя

user.mfaEnabled

boolean

-

Флаг двухфакторной аутентификации «true»

user.notificationEnabled

boolean

-

Флаг подключения уведомлений

user.roles

string[]

-

Роли пользователя

user.actions

string[]

-

Список доступных разрешений пользователя

user.tenants

string[]

-

Тенанты пользователя

user.tokens

string

-

Токены пользователя

qrContent

string

-

QR-код

recoveryCodes

string[]

-

Список кодов восстановления

Результатом должно быть: флаг «mfaEnabled», установленный в положение «true»; получение QR-кода в Base64 формате для вывода PNG изображения; получение двух одноразовых кодов для восстановления, которые могут быть использованы в случае утраты возможности получения одноразового пароля через мобильное приложение.

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

{
    "user": {
        "id": "string",
        "enabled": true,
        "firstName": "string",
        "lastName": "string",
        "position": "string",
        "email": "string",
        "mfaEnabled": true,
        "notificationEnabled": true,
        "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
        "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
        "tenants": ["string"],
        "tokens": "[{\"id\": 1, \"name\": tokenName}]"
    },
    "qrContent": "data:image/png;base64,QR-CODE",
    "recoveryCodes": ["string"]
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Прохождение двухфакторной аутентификации для текущего пользователя - users/current/mfa/enable

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

PATCH: oidc/api/v1/users/current/mfa/enable

Параметр тела запроса

Тип данных

Обязательность

Описание

otpCode

string

*

Одноразовый пароль пользователя, задается цифрами

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

{
    "otpCode": "123456"
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

«true»

-

Флаг двухфакторной аутентификации «true»

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": true,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Отключение двухфакторной аутентификации для текущего пользователя - users/current/mfa/disable

Отключение двухфакторной аутентификации для последующего входа текущего пользователя в Личный кабинет.

PATCH: oidc/api/v1/users/current/mfa/disable

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

«false»

-

Флаг двухфакторной аутентификации «false»

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

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

{
    "id": "string",
    "enabled": true,
    "firstName": "string",
    "lastName": "string",
    "position": "string",
    "email": "string",
    "mfaEnabled": false,
    "notificationEnabled": true,
    "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
    "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
    "tenants": ["string"],
    "tokens": "[{\"id\": 1, \"name\": tokenName}]"
}

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос


Отключение двухфакторной аутентификации списка пользователей - users/mfa-disable

Отключение двухфакторной аутентификации для последующего входа в Личный кабинет для пользователей из заданного списка.

POST: oidc/api/v1/users/mfa-disable

Параметр тела запроса

Тип данных

Обязательность

Описание

userIds

string[]

*

Список логинов (идентификаторов) пользователей

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

{
    "userIds": ["string"]
}

Параметр ответа 200 OK

Тип данных

Обязательность

Описание

id

string

-

Идентификатор пользователя

enabled

boolean

-

Флаг активности пользователя

firstName

string

-

Имя пользователя

lastName

string

-

Фамилия пользователя

position

string

-

Должность пользователя

email

string

-

Email пользователя

mfaEnabled

«false»

-

Флаг двухфакторной аутентификации «false»

notificationEnabled

boolean

-

Флаг подключения уведомлений

roles

string[]

-

Роли пользователя

actions

string[]

-

Список доступных разрешений пользователя

tenants

string[]

-

Тенанты пользователя

tokens

string

-

Токены пользователя

Результатом должен быть флаг «mfaEnabled», установленный для указанных пользователей в положение «false».

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

[
    {
        "id": "string",
        "enabled": true,
        "firstName": "string",
        "lastName": "string",
        "position": "string",
        "email": "string",
        "mfaEnabled": false,
        "notificationEnabled": true,
        "roles": ["ROLE_ADMIN", "ROLE_OPERATOR"],
        "actions": ["SELF_MANAGEMENT", "PATTERNS_VIEW"],
        "tenants": ["string"],
        "tokens": "[{\"id\": 1, \"name\": tokenName}]"
    }
]

400 Error

Максимальная длина 250 символов

403 Error

Доступ запрещен

404 Error

Значения параметров не соответствуют схеме

409 Error

Несовместимость запросов

500 Error

Сервер не может обработать запрос

../_images/Weblock_Logos_small.png