すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:データセキュリティ (マスキングと暗号化) プラグイン

最終更新日:Nov 12, 2025

データセキュリティプラグインを使用して、機密データをマスキングおよび暗号化します。

プラグイン効果の例

次の表は、Simple Log Service に保存された後の生ログのデータ構造を示しています。この表では、ネイティブのデータマスキングプラグインを使用した場合の結果と、プラグインを使用しない場合の結果を比較しています。

生ログ

プラグインなし

データマスキングプラグインあり

[{'account':'1812213231432969','password':'04a23f38'}, {'account':'1812213685634','password':'123a'}]

内容: "[{'account':'1812213231432969','password':'04a23f38'}, {'account':'1812213685634','password':'123a'}]"

内容: "[{'account':'1812213231432969','password':'********'}, {'account':'1812213685634','password':'********'}]"

データセキュリティプラグインの概要

Simple Log Service は、次の種類のデータセキュリティプラグインを提供します。ニーズに応じてプラグインを選択できます。

プラグイン名

タイプ

説明

データマスキング

ネイティブ

ログフィールドをマスキングして置き換えます。

データマスキング

拡張

機密データを指定された文字列または MD5 ハッシュに置き換えます。

フィールドの暗号化

拡張

指定されたフィールドのコンテンツを暗号化します。

データのエンコーディングとデコーディング

拡張

Base64 からデータをデコードするか、データを Base64 または MD5 にエンコードします。

エントリポイント

Logtail プラグインを使用してログを処理する場合は、Logtail 構成を作成または変更するときに Logtail プラグイン構成を追加できます。詳細については、「概要」をご参照ください。

ネイティブプラグインと拡張プラグインの違い

ネイティブプラグインは、パフォーマンス向上のために C++ で実装されています。

拡張プラグインは、豊富で柔軟なエコシステムを提供するために Go で実装されています。ビジネスログが複雑すぎてネイティブプラグインで処理できない場合は、拡張プラグインを使用できます。

  • 拡張プラグインのパフォーマンス制限

    • 拡張プラグインを使用してログを処理すると、LoongCollector はより多くのリソース (主に CPU) を消費します。必要に応じて、LoongCollector パラメーター設定を調整して、長いログ転送レイテンシーの最適化を実行できます。

    • 生データの生成速度が 5 MB/s を超える場合は、プラグインの複雑な組み合わせを使用してログを処理しないでください。拡張プラグインを使用して単純な処理を行い、データ変換を使用してさらに処理できます。

  • ログ収集の制限

    • 拡張プラグインは、テキストログをラインモードで処理します。これは、__tag__:__path____topic__ などのファイルレベルのメタデータが各ログに保存されることを意味します。

    • 拡張プラグインを追加すると、タグに関連する機能に影響します:

      • コンテキストクエリと LiveTail 機能は使用できなくなります。これらの機能を使用するには、アグリゲーター構成を追加する必要があります。

      • __topic__ フィールドは __log_topic__ に名前が変更されます。アグリゲーター構成を追加すると、__topic__ フィールドと __log_topic__ フィールドの両方がログに存在します。__log_topic__ フィールドが必要ない場合は、フィールド削除プラグインを使用して削除できます。

      • __tag__:__path__ などのフィールドには、ネイティブフィールドインデックスがなくなります。それらのためにフィールドインデックスを作成する必要があります。

データマスキングプラグイン (ネイティブ)

データマスキングプラグインはログをマスキングします。

構成の説明

パラメーター

説明

ソースフィールド

解析前のログコンテンツを保存するソースフィールド。

マスキング方法

マスキング方法。有効な値:

  • const: 機密コンテンツを指定した文字列に置き換えます。

  • md5: 機密コンテンツを対応する MD5 ハッシュに置き換えます。

置換文字列

[マスキング方法][const] に設定した場合は、機密コンテンツを置き換える文字列を入力します。

プレフィックスコンテンツ式

機密コンテンツの前にあるコンテンツの式。この式は、機密コンテンツを見つけるために使用されます。式は RE2 構文に従う必要があります。詳細については、「RE2 構文」をご参照ください。

置換コンテンツの式

機密コンテンツの式。式は RE2 構文に従う必要があります。詳細については、「RE2 構文」をご参照ください。

すべての一致を置換

  • [すべての一致を置換] を選択すると、フィールド内のすべての機密コンテンツが置き換えられます。

  • [すべての一致を置換] を選択しない場合、フィールド内の式に一致するコンテンツの最初の部分のみが置き換えられます。

  • ソースフィールド

    content:[{'account':'1812213231432969','password':'04a23f38'}, {'account':'1812213685634','password':'123a'}]
  • Logtail 構成image.png

  • 解析結果

    [{'account':'1812213231432969','password':'********'}, {'account':'1812213685634','password':'********'}]

データマスキングプラグイン (拡張)

processor_desensitize プラグインを使用して、ログ内の機密データを指定された文字列または MD5 ハッシュに置き換えることができます。このセクションでは、パラメーターについて説明し、processor_desensitize プラグインの例を示します。

制限

  • フォームベースの構成: テキストログとコンテナーの標準出力を収集する場合に利用できます。

  • JSON 構成: テキストログを収集する場合には利用できません。

構成手順

重要

processor_desensitize プラグインは Logtail 1.3.0 以降でサポートされています。

フォームベースの構成

[プロセッサータイプ][データマスキング] に設定します。次の表にパラメーターを示します。

  • パラメーター

    パラメーター

    説明

    ソースフィールド

    ログフィールドの名前。

    マスキング方法

    マスキング方法。有効な値:

    • 文字列置換: 機密コンテンツを文字列に置き換えます。[置換文字列] パラメーターで宛先文字列を指定できます。

    • md5: 機密コンテンツを対応する MD5 ハッシュに置き換えます。

    機密データコンテンツ

    機密コンテンツを抽出する方法。有効な値:

    • フィールド全体: すべてのコンテンツを抽出します。これにより、宛先フィールドのすべてのコンテンツが置き換えられます。

    • 正規表現: 正規表現を使用して機密コンテンツを抽出します。

    置換文字列

    機密コンテンツの置換に使用される文字列。

    このパラメーターは、[マスキング方法][文字列置換] に設定した場合に必要です。

    機密コンテンツのプレフィックスの正規表現

    機密コンテンツのプレフィックスに一致する正規表現。

    このパラメーターは、[機密データコンテンツ][正規表現] に設定した場合に必要です。

    機密コンテンツの正規表現

    機密コンテンツに一致する正規表現。

    このパラメーターは、[機密データコンテンツ][正規表現] に設定した場合に必要です。

  • 宛先フィールドのすべてのコンテンツを文字列に置き換えます。

    • 生ログ

      "password" : "123abcdefg"
    • Logtail プラグイン処理構成image

    • 結果

      "password":"********"

JSON 構成

typeprocessor_desensitize に設定します。次の表に detail のパラメーターを示します。

  • パラメーター

    パラメーター

    タイプ

    必須

    説明

    SourceKey

    文字列

    はい

    ログフィールドの名前。

    Method

    文字列

    はい

    マスキング方法。有効な値:

    • const: 機密コンテンツを文字列に置き換えます。ReplaceString パラメーターで宛先文字列を指定できます。

    • md5: 機密コンテンツを対応する MD5 ハッシュに置き換えます。

    Match

    文字列

    いいえ

    機密コンテンツを抽出する方法。有効な値:

    • full (デフォルト): すべてのコンテンツを抽出します。これにより、宛先フィールドのすべてのコンテンツが置き換えられます。

    • regex: 正規表現を使用して機密コンテンツを抽出します。

    ReplaceString

    文字列

    いいえ

    機密コンテンツの置換に使用される文字列。

    このパラメーターは、Methodconst に設定した場合に必要です。

    RegexBegin

    文字列

    いいえ

    機密コンテンツのプレフィックスに一致する正規表現。

    このパラメーターは、Matchregex に設定した場合に必要です。

    RegexContent

    文字列

    いいえ

    機密コンテンツに一致する正規表現。

    このパラメーターは、Matchregex に設定した場合に必要です。

    • 例 1

      宛先フィールドのすべてのコンテンツを文字列に置き換えます。これを行うには、Methodconst に、Matchfull に設定します。

      • 生ログ

        "password" : "123abcdefg"
      • Logtail プラグイン処理構成

        {
          "type" : "processor_desensitize",
          "detail" : {
            "SourceKey" : "password",
            "Method" : "const",
            "Match" : "full",
            "ReplaceString": "********"
          }
        }
      • 結果

        "password":"********"
    • 例 2

      正規表現を使用して宛先フィールドの機密コンテンツを指定し、対応する MD5 ハッシュに置き換えることができます。これを行うには、Methodmd5 に、Matchregex に設定します。

      • 生ログ

        "content" : "[{'account':'1234567890','password':'abc123'}]"
      • Logtail プラグイン処理構成

        {
           "type" : "processor_desensitize",
           "detail" : {
              "SourceKey" : "content",
              "Method" : "md5",
              "Match" : "regex",
              "RegexBegin": "'password':'",
              "RegexContent": "[^']*"
           }
        }
      • 結果

        "content":"[{'account':'1234567890','password':'e99a18c428cb38d5f260853678922e03'}]"

フィールド暗号化プラグイン (拡張)

processor_encrypt プラグインを使用して、指定されたフィールドを暗号化できます。このセクションでは、パラメーターについて説明し、processor_encrypt プラグインの例を示します。

構成の説明

フォームベースの構成

[プロセッサータイプ][フィールド暗号化] に設定します。次の表にパラメーターを示します。

パラメーター

説明

ソースフィールド

暗号化するソースフィールド。複数のフィールドを追加できます。

キー

暗号鍵。キーは 64 文字の 16 進文字列である必要があります。

初期化ベクトル

暗号化のための初期化ベクトル (IV)。IV は 32 文字の 16 進文字列である必要があります。デフォルト値は 00000000000000000000000000000000 です。

保存パス

暗号化パラメーターを読み取るファイルパス。このパラメーターが構成されていない場合は、Logtail 構成の [入力構成] で指定されたファイルパスが使用されます。

失敗時にソースデータを保持

このオプションを選択し、暗号化に失敗した場合、システムは元のフィールド値を保持します。

このオプションを選択せず、暗号化に失敗した場合、フィールド値は ENCRYPT_ERROR に置き換えられます。

JSON 構成

typeprocessor_encrypt に設定します。次の表に detail のパラメーターを示します。

パラメーター

タイプ

必須

説明

SourceKey

文字列の配列

はい

ソースフィールドの名前。

EncryptionParameters

オブジェクト

はい

キーの構成。

Key

文字列

はい

暗号鍵。キーは 64 文字の 16 進文字列である必要があります。

IV

文字列

いいえ

暗号化のための初期化ベクトル (IV)。IV は 32 文字の 16 進文字列である必要があります。デフォルト値は 00000000000000000000000000000000 です。

KeyFilePath

ブール値

いいえ

暗号化パラメーターを読み取るファイルパス。このパラメーターが構成されていない場合は、Logtail 構成の [入力構成] で指定されたファイルパスが使用されます。

KeepSourceValueIfError

文字列

いいえ

暗号化に失敗した場合に元のフィールド値を保持するかどうかを指定します。

  • true: 値を保持します。

  • false (デフォルト): 値を保持しません。

    暗号化に失敗した場合、フィールド値は ENCRYPT_ERROR に置き換えられます。

データエンコーディングおよびデコーディングプラグイン (拡張)

processor_base64_encoding、processor_base64_decoding、または processor_md5 プラグインを使用して、フィールド値をエンコードまたはデコードできます。このセクションでは、各プラグインのパラメーターと例について説明します。

制限

  • フォームベースの構成: テキストログとコンテナーの標準出力を収集する場合に利用できます。

  • JSON 構成: テキストログを収集する場合には利用できません。

Base64 エンコーディング

processor_base64_encoding プラグインを使用してフィールド値をエンコードできます。

フォームベースの構成

[プロセッサータイプ][BASE64 (エンコード)] に設定します。次の表にパラメーターを示します。

パラメーター

説明

ソースフィールド

ソースフィールドの名前。

結果フィールド

エンコードされた結果を格納するフィールドの名前。

ソースフィールドがない場合にエラー

このオプションを選択すると、ソースフィールドが生ログに存在しない場合にシステムがエラーを報告します。

JSON 構成

typeprocessor_base64_encoding に設定します。次の表に detail のパラメーターを示します。

パラメーター

タイプ

必須

説明

SourceKey

文字列

はい

ソースフィールドの名前。

NewKey

文字列

はい

エンコードされた結果を格納するフィールドの名前。

NoKeyError

ブール値

いいえ

ソースフィールドが生ログに存在しない場合にシステムがエラーを報告するかどうかを指定します。

  • true: エラーを報告します。

  • false (デフォルト): エラーを報告しません。

Base64 デコーディング

processor_base64_decoding プラグインを使用してフィールド値をデコードできます。

フォームベースの構成

[プロセッサータイプ][BASE64 (デコード)] に設定します。次の表にパラメーターを示します。

パラメーター

説明

ソースフィールド

ソースフィールドの名前。

結果フィールド

デコードされた結果を格納するフィールドの名前。

ソースフィールドがない場合にエラー

このオプションを選択すると、ソースフィールドが生ログに存在しない場合にシステムがエラーを報告します。

デコード失敗時にエラー

このオプションを選択すると、デコードに失敗した場合にシステムがエラーを報告します。

JSON 構成

typeprocessor_base64_decoding に設定します。次の表に detail のパラメーターを示します。

パラメーター

タイプ

必須

説明

SourceKey

文字列

はい

ソースフィールドの名前。

NewKey

文字列

はい

デコードされた結果を格納するフィールドの名前。

NoKeyError

ブール値

いいえ

ソースフィールドが生ログに存在しない場合にシステムがエラーを報告するかどうかを指定します。

  • true: エラーを報告します。

  • false (デフォルト): エラーを報告しません。

DecodeError

ブール値

いいえ

デコードに失敗した場合にシステムがエラーを報告するかどうかを指定します。

  • true: エラーを報告します。

  • false (デフォルト): エラーを報告しません。

MD5 エンコーディング

processor_md5 プラグインを使用して、フィールド値を MD5 にエンコードできます。

フォームベースの構成

[プロセッサータイプ][MD5] に設定します。次の表にパラメーターを示します。

パラメーター

説明

ソースフィールド

ソースフィールドの名前。

結果フィールド

エンコードされた結果を格納するフィールドの名前。

ソースフィールドがない場合にエラー

このオプションを選択すると、ソースフィールドが生ログに存在しない場合にシステムがエラーを報告します。

JSON 構成

typeprocessor_md5 に設定します。次の表に detail のパラメーターを示します。

パラメーター

タイプ

必須

説明

SourceKey

文字列

はい

ソースフィールドの名前。

MD5Key

文字列

はい

エンコードされた結果を格納するフィールドの名前。

NoKeyError

ブール値

いいえ

ソースフィールドが生ログに存在しない場合にシステムがエラーを報告するかどうかを指定します。

  • true: エラーを報告します。

  • false (デフォルト): エラーを報告しません。

リファレンス