Пользователи

<< Click to Display Table of Contents >>

Navigation:  API MasterSCADA 4D > Подключение к исполнительной системе по JSON > HTTP API MasterPLC >

Пользователи

Методы этого раздела управляют учётными записями, ролями, сменами, правами доступа и контролем целостности, а также настройками журнала и архива системы информационной безопасности (ИБ).

Общий контракт

Все методы вызываются POST-запросом с JSON-объектом в теле.

Сессия определяется HTTP-заголовком Session-Id (FastCGI-переменная HTTP_SESSION_ID): по нему шлюз восстанавливает пользователя source вида login@host. Методы этого раздела не читают поле sessionId из тела запроса. Исключение — RTUsersCloseSession, использующий отдельное поле sessionIdToClose.

Каждый метод требует определённого права (см. столбец «Право» в разделах). Права проверяются по текущей сессии, а не по параметрам тела.

Прикладной результат возвращается с HTTP-статусом 200, в том числе при ненулевом code.

Успешный ответ содержит code: 0. Дополнительные данные метода (если есть) описаны в его разделе.

Методы addins/mplc_users и GetADGroupsRequest не добавляют serverTime. Методы addins/mplc_events (GetISEventsArchiveSettings, GetEventsArchiveState, SetISLogSettings) добавляют serverTime — время сервера, Unix time в миллисекундах.

При ошибке метод mplc_users возвращает code = OpcUa_Bad (2147483648, hex 0x80000000) и текст причины в поле error. Оболочка core/mplcshare дополнительно добавляет hex и codeDescription. Часть методов для отдельных проверок пишет errorText и возвращает более конкретный код (OpcUa_BadInvalidArgument, OpcUa_BadNotFound и т. п.). Список кодов — в формате запросов и ответов.

Общие поля ответа:

Поле

Когда присутствует

Описание

code

всегда

Числовой прикладной результат; 0 означает успех

error

ошибка сессии, права или бизнес-операции в mplc_users

Текст причины отказа

errorText

ранняя проверка аргументов отдельных методов

Текст ошибки конкретной проверки

hex

code0

Код в шестнадцатеричном виде

codeDescription

code — ошибочный OPC UA status

Локализованное описание кода

serverTime

только методы mplc_events

Время сервера, Unix time в миллисекундах

Типовой отказ по праву доступа:

{
  "error": "Недостаточно прав для выполнения операции",
  "hex": "0x80000000",
  "codeDescription": "Bad",
  "code": 2147483648
}

Единицы времени в этом разделе: длительности и сроки (sessionDuration, passwordExpirationTime и т. п.), а также времена суток (start, end, Min, Max) передаются и возвращаются целыми числами миллисекунд; даты (allowed_dates, loginTime, unblock_time) — Unix time в миллисекундах.