4. Скрытые пользовательские макросы

Обзор

Zabbix предоставляет два варианта защиты конфиденциальной информации в значениях пользовательских макросов:

  • Скрытый текст
  • Секрет хранилища

Хотя значение скрытого макроса и спрятано, его можно раскрыть посредством использования в элементах данных. Например, во внешнем скрипте оператор echo, ссылающийся на скрытый макрос, может использоваться для раскрытия значения макроса в веб-интерфейсе, поскольку сервер Zabbix имеет доступ к реальному значению макроса. Смотрите местоположения, где значения скрытых макросов не замаскированы.

Скрытые макросы нельзя использовать в выражениях триггеров.

Секретный текст

При использовании макросов Secret text значение макроса маскируется звездочками.

Чтобы сделать значение макроса секретным, нажмите кнопку в конце поля Value и выберите параметр Secret text:

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

Чтобы изменить значение макроса, наведите курсор на поле Value и нажмите кнопку Set new value (появляется при наведении):

При нажатии кнопки Set new value (или при изменении типа значения макроса) текущее значение будет удалено. Вы можете восстановить исходное значение, нажав стрелку в конце поля Value (доступно только до сохранения новой конфигурации). Обратите внимание, что восстановление исходного значения не приведет к его раскрытию.

URL-адреса, содержащие секретный макрос, не будут работать, так как макрос в них будет преобразован в "******".

Секрет Vault

С помощью макросов Vault secret значение макроса хранится во внешнем программном обеспечении для управления секретами (vault).

Чтобы настроить макрос Vault secret, нажмите кнопку в конце поля Value и выберите опцию Vault secret:

Значение макроса должно указывать на секрет vault. Формат ввода зависит от поставщика vault. Примеры настройки для конкретных поставщиков см. в:

Значения макросов секретов Vault извлекаются из хранилища Zabbix server (и Zabbix proxy, если для параметра Resolve secret vault macros by задано значение Zabbix server and proxy) при каждом обновлении конфигурационных данных и затем сохраняются в кэше конфигурации.
Zabbix server и Zabbix proxy могут использовать разные хранилища.

Если для параметра Resolve secret vault macros by задано значение Zabbix server, то секреты Vault извлекаются только сервером, а Zabbix proxy получает значения макросов секретов Vault от Zabbix server при каждой синхронизации конфигурации и сохраняет их в собственном кэше конфигурации.
Это означает, что Zabbix proxy не может начать сбор данных после перезапуска, пока не получит обновление конфигурации от Zabbix server.

Чтобы вручную обновить значения секретов из хранилища, используйте параметр secrets_reload управления во время выполнения (только сервер).

Между Zabbix server и proxy должно быть включено шифрование; в противном случае в журнале будет записано предупреждающее сообщение сервера.

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

Немаскированные расположения

Этот список содержит расположения параметров, в которых значения секретных макросов не маскируются.

Значения секретных макросов останутся замаскированными в указанных ниже расположениях, если на них ссылаются косвенно. Например, встроенные макросы}, {ITEM.KEY<1-9>}, {LLDRULE.KEY}, используемые в типах элементов данных (параметры Script или Webhook), будут разрешаться в ключи элементов данных, содержащие замаскированные секретные макросы, например net.tcp.port[******,******] вместо net.tcp.port[192.0.2.1,80].

Контекст Параметр
Элементы данных, прототипы элементов данных, правила LLD
Элемент данных Параметры ключа элемента данных
Прототип элемента данных Параметры ключа прототипа элемента данных
Правило низкоуровневого обнаружения Параметры ключа элемента обнаружения
SNMP agent SNMP community
Context name (SNMPv3)
Security name (SNMPv3)
Authentication passphrase (SNMPv3)
Privacy passphrase (SNMPv3)
HTTP agent URL
Query fields
Request body
Headers
User name
Password
SSL key password
Script Parameters
Script
Browser Parameters
Script
Database monitor SQL query
TELNET agent Script
User name
Password
SSH agent Script
User name
Password
Simple check User name
Password
JMX agent User name
Password
Предварительная обработка значения элемента данных
Шаг предварительной обработки JavaScript Script
Веб-сценарии
Веб-сценарий Variable value
Header value
URL
Query field value
Post field value
Raw post
Аутентификация веб-сценария User
Password
SSL key password
Коннекторы
Коннектор URL
Username
Password
Token
HTTP proxy
SSL certificate file
SSL key file
SSL key password
Сетевое обнаружение
SNMP SNMP community
Context name (SNMPv3)
Security name (SNMPv3)
Authentication passphrase (SNMPv3)
Privacy passphrase (SNMPv3)
Глобальные скрипты
Вебхук JavaScript script
JavaScript script parameter value
Telnet Username
Password
SSH Username
Password
Script Script
Типы медиа
Script Script parameters
Вебхук Parameters
Управление IPMI
Узел сети Username
Password