Zabbix は、ユーザーマクロの値に含まれる機密情報を保護するために、2 つのオプションを提供しています。
秘密マクロの値は非表示ですが、アイテム内での使用によって公開される可能性があります。 例えば、外部スクリプトで、秘密マクロを参照する echo
ステートメントを使用すると、Zabbix サーバーが実際のマクロ値にアクセスできるため、フロントエンドにマクロ値が公開される可能性があります。 秘密マクロ値がマスク解除される 場所 を参照してください。
秘密マクロはトリガー式では使用できません。
Zabbix provides two options for protecting sensitive information in user macro values:
Note that while the value of a secret macro is hidden, the value can be revealed through the use in items. For example, in an external script an 'echo' statement referencing a secret macro may be used to reveal the macro value to the frontend because Zabbix server has access to the real macro value.
Secret macros cannot be used in trigger expressions.
シークレットテキストマクロでは、マクロの値はアスタリスクで表示されます。
マクロの値をシークレットにするには、値フィールドの末尾にあるボタンをクリックし、シークレットテキストオプションを選択します。
設定を保存すると、値は表示されなくなります。
マクロの値を変更するには、値フィールドにマウスオーバーし、新しい値を設定ボタンをクリックします(マウスオーバー時に表示されます)。
新しい値を設定ボタンをクリックするか、マクロの値のタイプを変更すると、現在の値が消去されます。 値 フィールドの末尾にある 矢印をクリックすると、元の値を復元できます(新しい設定を保存する前のみ)。 元の値を復元しても、その値は公開されませんのでご注意ください。
シークレットマクロを含むURLは、そのマクロが "******" として解決されるため、機能しません。
Vault シークレットマクロでは、マクロの値は外部のシークレット管理ソフトウェア(Vault)に保存されます。
Vault シークレットマクロを設定するには、値フィールドの末尾にあるボタンをクリックし、Vault シークレットオプションを選択します。
マクロの値は Vault シークレットを指す必要があります。 入力形式は Vault プロバイダーによって異なります。プロバイダー固有の設定例については、以下を参照してください。
Vault シークレットマクロ値は、設定データの更新ごとに Zabbix サーバーによって Vault から取得され、設定キャッシュに保存されます。
Zabbix プロキシは、設定同期ごとに Zabbix サーバーから Vault シークレットマクロの値を受け取り、自身の設定キャッシュに保存します。 プロキシは Vault からマクロ値を直接取得することはありません。 つまり、Zabbix プロキシは、再起動後、Zabbix サーバーから設定の更新を受け取るまで、データ収集を開始できません。
Vault からシークレット値を手動で更新するには、secrets_reload
ランタイム制御 オプションを使用します。
Zabbix サーバーとプロキシ間で暗号化を有効にする必要があります。有効になっていない場合、サーバーの警告メッセージがログに記録されます。
マクロ値が正常に取得できない場合、その値を使用している対応するアイテムはサポート対象外になります。
このリストは、シークレットマクロ値がマスクされていないパラメーターの場所を示しています。
Zabbix 7.2.7 以降、シークレットマクロ値が間接的に参照される場合、以下の場所ではマスクされたままになります。 例えば、メディアタイプ(スクリプトまたは Webhook パラメーター)で使用される {ITEM.KEY}、{ITEM.KEY<1-9>}、{LLDRULE.KEY} 組み込みマクロ は、net.tcp.port[192.0.2.0,80]
ではなく net.tcp.port[******,******]
などのマスクされたシークレットマクロを含むアイテムキーに解決されます。
コンテキスト | パラメーター | |
---|---|---|
アイテム、アイテムプロトタイプ、LLDルール | ||
アイテム | アイテムキーパラメータ | |
アイテムプロトタイプ | アイテムプロトタイプキーパラメータ | |
低レベル検出ルール | 検出アイテムキーパラメータ | |
SNMPエージェント | SNMPコミュニティ | |
コンテキスト名 (SNMPv3) | ||
セキュリティ名 (SNMPv3) | ||
認証パスフレーズ (SNMPv3) | ||
プライバシーパスフレーズ (SNMPv3) | ||
HTTPエージェント | URL | |
クエリフィールド | ||
Post | ||
ヘッダー | ||
ユーザー名 | ||
パスワード | ||
SSL キー パスワード | ||
スクリプト | パラメーター | |
スクリプト | ||
ブラウザ | パラメーター | |
スクリプト | ||
データベース モニター | SQL クエリ | |
TELNET エージェント | スクリプト | |
ユーザー名 | ||
パスワード | ||
SSH エージェント | スクリプト | |
ユーザー名 | ||
パスワード | ||
簡易チェック | ユーザー名 | |
パスワード | ||
JMX エージェント | ユーザー名 | |
パスワード | ||
項目値の前処理 | ||
JavaScript 前処理ステップ | スクリプト | |
Web シナリオ | ||
Web シナリオ | 変数値 | |
ヘッダー値 | ||
URL | ||
クエリ フィールド値 | ||
POST フィールド値 | ||
Raw POST | ||
Web シナリオ認証 | ユーザー | |
パスワード | ||
SSL キー パスワード | ||
コネクタ | ||
コネクタ | URL | |
ユーザー名 | ||
パスワード | ||
トークン | ||
HTTP プロキシ | ||
SSL 証明書ファイル | ||
SSL キー ファイル | ||
SSL キー パスワード | ||
ネットワーク検出 | ||
SNMP | SNMPコミュニティ | |
コンテキスト名 (SNMPv3) | ||
セキュリティ名 (SNMPv3) | ||
認証パスフレーズ (SNMPv3) | ||
プライバシーパスフレーズ (SNMPv3) | ||
グローバルスクリプト | ||
Webhook | JavaScriptスクリプト | |
JavaScriptスクリプトパラメータ値 | ||
Telnet | ユーザー名 | |
パスワード | ||
SSH | ユーザー名 | |
パスワード | ||
Script | スクリプト | |
メディアタイプ | ||
Script | スクリプトパラメータ | |
Webhook | パラメータ | |
IPMI管理 | ||
ホスト | ユーザー名 | |
パスワード |