はじめに
Splunkへデータを取り込む際、様々なデータ加工を実現することが可能です。
その1つとしてマスキング処理がありますが、2022/6にリリースされたSplunk Enterprise v9.0では、新たに機能追加されたIngest Actions機能を利用した設定が可能となりました。
https://docs.splunk.com/Documentation/Splunk/9.0.0/ReleaseNotes/MeetSplunk#What.27s_New_in_9.0
マスキング処理自体は以前のバージョンにおいても実現可能です。
本稿では、Ingest Actions機能を利用したマスキング処理設定についてご紹介します。
また、設定比較として、以前のバージョンにおける設定例についてもご紹介します。
前提
- Splunk Enterpriseバージョン
- v9.0.0, v8.2.2
- Splunk構成
- Standalone構成
- 使用するサンプルログ
データ取り込み時のマスキング処理設定
Ingest Action機能によるマスキング処理設定(Splunk Enterprise v9.0)
Ingest Action機能を利用したマスキング処理の設定方法を記載します。
設定例として、ログに含まれるAcctID値を、下4桁を除いてマスキング(xに置換)するという処理を実現します。
[04/Jul/2022:18:24:02] VendorID=5036 Code=B AcctID=1534236453231575
設定例
① Splunk Web:設定 > データ:取り込みアクション(Ingest Actions) をクリック
② RuleSetsタブを選択し、"New Ruleset"をクリック
③ ルールセット編集画面にて、ルール名設定及びプレビュー対象とするイベントを選択
※以下例では"Sample File"を選択し、適用するソースタイプの選択とログファイルをアップロードします。
④ ルールセット編集画面にて、規則の追加 > Mask with Regular Expressionを選択
⑤ ルールセット編集画面にて、マスキング処理ルールを設定
ルールを入力すると、画面右側のサンプルデータ上に処理結果が随時反映されます。
・Match Regular Expression:(AcctID=)\d{12}(\d{4})
・Replace Expression:\1xxxxxxxxxxxx\2
※Match Regular Expressionにおいて、(括弧)で括った範囲を左から順に\1, \2, …と指定することで参照します。
⑦ 実際にファイルをSplunkへ取り込み、設定に従いデータがマスキングされていることを確認します。
※補足
ルールセット編集画面において、画面右上の"Preview Config"をクリックすると、設定ファイルに追加される設定値を確認可能です。
参照
比較:props.conf/transforms.confによる従来のマスキング処理設定
設定比較として、同様の処理をSplunk Enterprise v8.2で実現する場合の設定例を以下に記載します。
設定方法は、設定ファイルであるprops.conf及びtransforms.confに直接追記する形となります。
設定例
-
props.conf ※関連設定のみ記載
[vendor_sales] TRANSFORMS = acctid_mask
-
transforms.conf
[acctid_mask] REGEX = (.*AcctID=)¥d{12}(¥d{4}.*) DEST_KEY = _raw FORMAT = $1xxxxxxxxxxxx$2