4 Secretユーザーマクロ
概要
Zabbixは、ユーザーマクロ値の機密情報を保護するために2つのオプションを提供しています。
- シークレットテキスト
- Vaultシークレット
シークレットマクロの値は非表示ですが、アイテムで使用することで明らかになる場合があります。
たとえば、外部スクリプトでシークレットマクロを参照するecho文を使用すると、Zabbixサーバーが実際のマクロ値にアクセスできるため、マクロ値がフロントエンドに表示される場合があります。
シークレットマクロ値がマスク解除される場所を参照してください。
シークレットマクロはトリガー式では使用できません。
シークレットテキスト
シークレットテキストマクロでは、マクロ値がアスタリスクでマスクされます。
マクロ値をシークレットにするには、値フィールドの末尾にあるボタンをクリックし、シークレットテキストオプションを選択します。

設定を保存すると、値を表示することはできなくなります。
マクロ値を変更するには、値フィールドにカーソルを合わせ、新しい値を設定ボタン(ホバー時に表示)をクリックします。

新しい値を設定ボタンをクリックする(またはマクロ値のタイプを変更する)と、現在の値は消去されます。
値フィールドの末尾にある
矢印をクリックすると、元の値を復元できます(新しい設定を保存する前のみ利用可能)。
元の値を復元しても、その値が表示されることはありません。
シークレットマクロを含むURLは機能しません。なぜなら、URL内のマクロは「******」として解決されるためです。
Vaultシークレット
Vaultシークレットマクロでは、マクロの値が外部のシークレット管理ソフトウェア(vault)に保存されます。
Vaultシークレットマクロを設定するには、値フィールドの末尾にあるボタンをクリックし、Vaultシークレットオプションを選択します。

マクロの値はvaultシークレットを指す必要があります。 入力フォーマットはvaultプロバイダーによって異なります。プロバイダー固有の設定例については、以下を参照してください。
Vaultシークレットマクロの値は、設定データが更新されるたびに、Zabbixサーバー(および、Resolve secret vault macros by が 設定 Zabbix server and proxy の場合はZabbixプロキシ)によってvaultから取得され、その後設定キャッシュに保存されます。 ZabbixサーバーとZabbixプロキシは、異なるvaultを使用する場合があります。
Resolve secret vault macros by が 設定 Zabbix server の場合、vaultシークレットはサーバーによってのみ取得され、Zabbixプロキシは各設定同期時にZabbixサーバーからVaultシークレットマクロの値を受け取り、自身の設定キャッシュに保存します。 これは、Zabbixプロキシが再起動後、Zabbixサーバーから設定更新を受信するまでデータ収集を開始できないことを意味します。
vaultからシークレット値を手動で更新するには、secrets_reload ランタイム制御 オプション(サーバーのみ)を使用します。
Zabbixサーバーとプロキシ間では暗号化を有効にする必要があります。そうでない場合、サーバーの警告メッセージがログに記録されます。
マクロ値を正常に取得できない場合、その値を使用している対応するアイテムは未サポートになります。
マスクされていない場所
この一覧は、秘密マクロ値がマスクされていないパラメーターの場所を示します。
秘密マクロ値は、間接的に参照されている場合、以下の場所でもマスクされたままになります。
たとえば、メディアタイプ(Script または webhook パラメーター)で使用される {ITEM.KEY}, {ITEM.KEY<1-9>}, {LLDRULE.KEY} 組み込みマクロ は、net.tcp.port[******,******] のように、マスクされた秘密マクロを含むアイテムキーに解決されます。net.tcp.port[192.0.2.1,80] にはなりません。
| Context | Parameter | |
|---|---|---|
| アイテム、アイテムプロトタイプ、LLDルール | ||
| アイテム | アイテムキーのパラメーター | |
| アイテムプロトタイプ | アイテムプロトタイプキーのパラメーター | |
| 低レベルディスカバリルール | ディスカバリアイテムキーのパラメーター | |
| SNMP エージェント | SNMP community | |
| コンテキスト名 (SNMPv3) | ||
| セキュリティ名 (SNMPv3) | ||
| 認証パスフレーズ (SNMPv3) | ||
| プライバシーパスフレーズ (SNMPv3) | ||
| HTTP エージェント | URL | |
| クエリフィールド | ||
| リクエスト本文 | ||
| ヘッダー | ||
| ユーザー名 | ||
| パスワード | ||
| SSL キーパスワード | ||
| Script | パラメーター | |
| スクリプト | ||
| Browser | パラメーター | |
| スクリプト | ||
| Database monitor | SQL クエリ | |
| TELNET エージェント | スクリプト | |
| ユーザー名 | ||
| パスワード | ||
| SSH エージェント | スクリプト | |
| ユーザー名 | ||
| パスワード | ||
| Simple check | ユーザー名 | |
| パスワード | ||
| JMX エージェント | ユーザー名 | |
| パスワード | ||
| アイテム値の前処理 | ||
| JavaScript 前処理ステップ | スクリプト | |
| Web シナリオ | ||
| Web シナリオ | 変数値 | |
| ヘッダー値 | ||
| URL | ||
| クエリフィールド値 | ||
| POST フィールド値 | ||
| 生の POST | ||
| Web シナリオ認証 | ユーザー | |
| パスワード | ||
| SSL キーパスワード | ||
| コネクタ | ||
| コネクタ | URL | |
| ユーザー名 | ||
| パスワード | ||
| トークン | ||
| HTTP プロキシ | ||
| SSL 証明書ファイル | ||
| SSL キーファイル | ||
| SSL キーパスワード | ||
| ネットワークディスカバリ | ||
| SNMP | SNMP community | |
| コンテキスト名 (SNMPv3) | ||
| セキュリティ名 (SNMPv3) | ||
| 認証パスフレーズ (SNMPv3) | ||
| プライバシーパスフレーズ (SNMPv3) | ||
| グローバルスクリプト | ||
| webhook | JavaScript スクリプト | |
| JavaScript スクリプトパラメーター値 | ||
| Telnet | ユーザー名 | |
| パスワード | ||
| SSH | ユーザー名 | |
| パスワード | ||
| Script | スクリプト | |
| メディアタイプ | ||
| Script | スクリプトパラメーター | |
| Webhook | パラメーター | |
| IPMI 管理 | ||
| ホスト | ユーザー名 | |
| パスワード | ||