|
<< 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 |
code ≠ 0 |
Код в шестнадцатеричном виде |
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 в миллисекундах.