4.1.4.8.5. Клиент безопасности

Security Client - модуль Astra.Server, предназначенный для получения значений необходимых настроек из Astra.Security и записи полученных значений в сигналы Astra.Server.
Модуль Security Client подключается к локальному Агенту Astra.Security и подписывается на элементы безопасности, значения которых необходимо передавать в сигналы Astra.Server.
Привязка сигналов
Сигналы Astra.Server, в которые необходимо передавать значения из элементов безопасности, Security Client определяет по наличию свойства 10100 (CLIENT_SECURITY_PROPERTY_ID. Данное свойство содержит привязку сигнала к элементу безопасности.
Общий формат привязки:
{App=(<app-id>) <token-type>=(<token-id>) <get-value-method>=(<get-value-expression>)}
|
В привязке определяется:
Приложение (поле App) - в качестве значения app-id указывается идентификатор приложения в Astra.Security.
Элемент безопасности, из которого нужно получать значение, и его тип:
token-type - определяет тип элемента безопасности:
«BoolToken» - логическое право;
«StringToken» - строковое право;
token-id - идентификатор элемента безопасности.
Опциональное поле, определяющее метод получения нужного значения из значения элемента безопасности, и соответствую выражение:
get-value-method - метод получения значения;
get-value-expression - выражение, соответствующее методу.
Модуль Security Client поддерживает следующие соответствия типов сигналов и привязок:
Для сигналов типа Bool поддерживается привязка к логическому праву без указания выражения получения значения. Текущее значение логического права напрямую передаётся в сигнал.
Для сигналов типа String поддерживается привязка к строковому праву без указания выражения получения значения. В сигнал напрямую передаётся первая строка разрешений.
Для сигналов типов Bool, String, а также целочисленных и вещественных типов поддерживается привязка к строковому праву с указанием выражения получения значения.
В качестве метода получения значения модуль Security Client использует извлечение из JSON-строки со следующими особенностями:
Значение извлекается из самой первой строки разрешения, если она существует.
Строка содержит JSON-объект. Поля, к значениям которых осуществляется доступ, имеют атомарный тип.
Идентификатор метода (поле get-value-method): «JsonValue».
Значение выражения (get-value-expression) - имя поля JSON-объекта, содержащегося в строке.
Привязка к значению логического права:
{App=(AuditService) BoolToken=(EnableAutoCleanup)}
|
Привязка к значению первой строки разрешения строкового права:
{App=(AuditService) StringToken=(SimpleStringSetting)}
|
Получение значений максимального размера БД:
{App=(AuditService) StringToken=(SizeSettings) JsonValue=(maxsize)}
|
Качество сигналов
|
Идентификатор качества
|
Расшифровка
|
|
(24) COMM_FAILURE
|
Не установлено соединение с Агентом Astra.Security.
|
|
(64) UNCERTAIN
|
Установлено соединение с Агентом Astra.Security, но значения ещё не получены.
|
|
(4) CONFIG_ERROR
|
Указанное приложение или элемент безопасности отсутствует.
|
|
(16) SENSOR_FAILURE
|
Приложение или элемент безопасности существует, но не удалось получить значение.
|
|
(192) GOOD
|
Значение получено.
|
|
(20) LAST_KNOWN
|
Потеряна связь с Агентом Astra.Security, это последнее известное значение.
|