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 (а также прокси Zabbix, если параметр Resolve secret vault macros by установлен в Zabbix server and proxy) при каждом обновлении данных конфигурации, а затем сохраняются в кэше конфигурации. Сервер Zabbix и прокси Zabbix могут использовать разные хранилища.
Если параметр Resolve secret vault macros by установлен в Zabbix server, то секреты Vault извлекаются только сервером, а прокси Zabbix получает значения секретных макросов Vault от сервера Zabbix при каждой синхронизации конфигурации и сохраняет их в собственном кэше конфигурации. Это означает, что прокси Zabbix не сможет начать сбор данных после перезапуска, пока не получит обновление конфигурации от сервера Zabbix.
Чтобы вручную обновить секретные значения из хранилища, используйте параметр runtime control secrets_reload (только для сервера).
Между сервером Zabbix и прокси должно быть включено шифрование; в противном случае в журнал записывается предупреждающее сообщение сервера.
Если значение макроса не удается успешно получить, соответствующий элемент данных, использующий это значение, станет неподдерживаемым.
Не замаскированные расположения
Этот список содержит расположения параметров, в которых значения секретных макросов не маскируются.
Значения секретных макросов останутся замаскированными в указанных ниже расположениях, если на них ссылаться косвенно.
Например, встроенные макросы {ITEM.KEY}, {ITEM.KEY<1-9>}, {LLDRULE.KEY} built-in macros, используемые в типах медиа (параметры Script или Webhook), будут разрешаться в ключи элементов данных, содержащие замаскированные секретные макросы, например net.tcp.port[******,******] вместо net.tcp.port[192.0.2.1,80].
| Контекст | Параметр | |
|---|---|---|
| Элементы данных, прототипы элементов данных, правила LLD | ||
| Элемент данных | Параметры ключа элемента данных | |
| Прототип элемента данных | Параметры ключа прототипа элемента данных | |
| Правило низкоуровневого обнаружения | Параметры ключа элемента данных обнаружения | |
| агент SNMP | SNMP community | |
| Имя контекста (SNMPv3) | ||
| Имя безопасности (SNMPv3) | ||
| Фраза аутентификации (SNMPv3) | ||
| Фраза конфиденциальности (SNMPv3) | ||
| агент HTTP | URL | |
| Поля запроса | ||
| Тело запроса | ||
| Заголовки | ||
| Имя пользователя | ||
| Пароль | ||
| Пароль ключа SSL | ||
| Script | Параметры | |
| Скрипт | ||
| Browser | Параметры | |
| Скрипт | ||
| Database monitor | SQL-запрос | |
| агент TELNET | Скрипт | |
| Имя пользователя | ||
| Пароль | ||
| агент SSH | Скрипт | |
| Имя пользователя | ||
| Пароль | ||
| Simple check | Имя пользователя | |
| Пароль | ||
| агент JMX | Имя пользователя | |
| Пароль | ||
| Предобработка значения элемента данных | ||
| Шаг предобработки JavaScript | Скрипт | |
| Веб-сценарии | ||
| Веб-сценарий | Значение переменной | |
| Значение заголовка | ||
| URL | ||
| Значение поля запроса | ||
| Значение поля POST | ||
| Raw post | ||
| Аутентификация веб-сценария | Пользователь | |
| Пароль | ||
| Пароль ключа SSL | ||
| Коннекторы | ||
| Коннектор | URL | |
| Имя пользователя | ||
| Пароль | ||
| Токен | ||
| HTTP proxy | ||
| Файл SSL-сертификата | ||
| Файл SSL-ключа | ||
| Пароль ключа SSL | ||
| Сетевое обнаружение | ||
| SNMP | SNMP community | |
| Имя контекста (SNMPv3) | ||
| Имя безопасности (SNMPv3) | ||
| Фраза аутентификации (SNMPv3) | ||
| Фраза конфиденциальности (SNMPv3) | ||
| Глобальные скрипты | ||
| вебхук | Скрипт JavaScript | |
| Значение параметра скрипта JavaScript | ||
| Telnet | Имя пользователя | |
| Пароль | ||
| SSH | Имя пользователя | |
| Пароль | ||
| Script | Скрипт | |
| Типы медиа | ||
| Script | Параметры скрипта | |
| вебхук | Параметры | |
| Управление IPMI | ||
| узел сети | Имя пользователя | |
| Пароль | ||