4 密钥用户宏

概述

Zabbix 提供了两种保护用户宏值中敏感信息的选项:

  • 密文文本
  • Vault 密钥

尽管密文宏的值是隐藏的,但通过在 监控项 中使用可以将其显示出来。 例如,在外部脚本中,可以使用引用密文宏的 echo 语句将宏值显示给前端,因为 Zabbix server 可以访问真实的宏值。 请参阅密文宏值被显示的位置

密文宏不能在触发器表达式中使用。

秘密文本

使用密文宏时,宏的值会以星号形式进行掩码。

要将宏值设为密文,可在字段末尾点击按钮,并选择密文选项:

配置保存后,将无法再查看该值。

如需更改宏值,请将鼠标悬停在字段上,并点击设置新值按钮(悬停时显示):

点击设置新值按钮(或更改宏值类型)后,当前值将被清除。 您可以通过点击字段末尾的 箭头恢复原始值(仅在保存新配置之前可用)。 请注意,恢复原始值不会将其暴露出来。

包含密文宏的URL将无法正常工作,因为其中的宏会被解析为"******"。

Vault秘密

使用Vault密钥宏时,宏的值将存储在外部密钥管理软件(Vault)中。

要配置Vault密钥宏,请点击值(Value)字段末尾的按钮,并选择Vault密钥(Vault secret)选项:

宏的值必须指向一个Vault密钥。
输入格式取决于Vault提供商。有关特定提供商的配置示例,请参见:

Vault密钥宏值会在每次刷新配置数据时由Zabbix server从Vault中检索,然后存储在configuration cache中。

Zabbix proxy在每次配置同步时从Zabbix server接收Vault密钥宏值,并将其存储在其自身的configuration cache中。 proxy从不直接从Vault检索宏值。 这意味着在重启后,Zabbix proxy无法开始数据采集,直到它从Zabbix server接收到配置update。

要手动刷新来自Vault的密钥值,请使用secrets_reload 运行时控制选项。

必须在Zabbix server和proxy之间启用加密;否则将记录服务器警告信息。

如果无法成功检索宏值,则使用该值的相应监控项将变为不支持状态。

未脱敏的位置

此列表提供了参数位置,其中的 secret macro 值未被脱敏。

自 Zabbix 7.0.13 起,如果通过间接方式引用,secret macro 值在下列位置中将保持脱敏状态。 例如,在媒体类型(Script 或 webhook 参数)中使用的 {ITEM.KEY}、{ITEM.KEY<1-9>}、{LLDRULE.KEY} 内置宏 将解析为包含已脱敏 secret macro 的监控项键,例如 net.tcp.port[******,******],而不是 net.tcp.port[192.0.2.1,80]

上下文 参数
监控项、监控项原型、LLD 规则
监控项 监控项键参数
监控项原型 监控项原型键参数
低级别发现规则 发现监控项键参数
SNMP agent SNMP community
上下文名称 (SNMPv3)
安全名称 (SNMPv3)
认证口令 (SNMPv3)
隐私口令 (SNMPv3)
HTTP agent URL
查询字段
请求正文
请求头
用户名
密码
SSL 密钥密码
Script 参数
脚本
Browser 参数
脚本
Database monitor SQL 查询
TELNET agent 脚本
用户名
密码
SSH agent 脚本
用户名
密码
Simple check 用户名
密码
JMX agent 用户名
密码
监控项值预处理
JavaScript 预处理步骤 脚本
Web 场景
Web 场景 变量值
请求头值
URL
查询字段值
Post 字段值
原始 post
Web 场景认证 用户
密码
SSL 密钥密码
连接器
连接器 URL
用户名
密码
令牌
HTTP proxy
SSL 证书文件
SSL 密钥文件
SSL 密钥密码
网络发现
SNMP SNMP community
上下文名称 (SNMPv3)
安全名称 (SNMPv3)
认证口令 (SNMPv3)
隐私口令 (SNMPv3)
全局脚本
webhook JavaScript 脚本
JavaScript 脚本参数值
Telnet 用户名
密码
SSH 用户名
密码
Script 脚本
媒体类型
Script 脚本参数
Webhook 参数
IPMI 管理
主机 用户名
密码