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

Simple Log Service:データマスキングと暗号化プラグイン

最終更新日:Jun 09, 2026

Simple Log Service (SLS) は、収集時にログ内の機密フィールドをマスク、暗号化、エンコードするプラグインを提供します。

次の表では、データマスキング プラグインを使用した場合と使用しない場合で、SLS に保存された生ログを比較します。

生ログ

プラグインなし

プラグインあり

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

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

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

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

SLS は、以下のデータセキュリティプラグインを提供します。

パラメーター

タイプ

説明

データマスキング

ネイティブ

ログフィールドをマスクします。

データマスキング

拡張

機密データを指定された文字列または 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 構文 に従う必要があります。

[一致するすべてのコンテンツを置き換える]

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

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

設定例

  • ソースフィールド

    content:[{'account':'1812213231432969','password':'04a23f38'}, {'account':'1812213685634','password':'123a'}]
  • Logtail 構成:プロセッサータイプデータマスキング に、マスキング方式const に、置換文字列******** に、先行コンテンツの式password':' に、置換対象の式[^']* に設定します。 [一致したすべてを置換] を選択し、[確認] をクリックします。

  • 処理結果

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

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

processor_desensitize プラグインは、ログ内の機密データを指定した文字列または MD5 ハッシュに置き換えます。

制限事項

  • フォームベースの設定:テキストログとコンテナの標準出力を収集する場合にサポートされます。

  • JSON ベースの設定:テキストログの収集ではサポートされません。

設定

重要

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

フォーム

[プロセッサータイプ]データマスキング に設定します。次の表では、関連パラメーターについて説明します。

  • パラメーター

    パラメーター

    説明

    [元のフィールド]

    ログフィールドの名前です。

    [マスキング方法]

    データマスキングの方法です。有効値:

    • [文字列の置き換え]: 機密コンテンツを文字列で置換する機能です。置換後の文字列は、文字列の置き換え パラメーターで指定できます。

    • md5: 機密コンテンツをその MD5 ハッシュで置き換えます。

    [機密データコンテンツ]

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

    • [フィールド全文]: 対象フィールドの値全体を置き換えます。

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

    [文字列の置き換え]

    機密コンテンツを置き換える文字列です。

    マスキング方法文字列の置き換え の場合に必須です。

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

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

    機密データコンテンツ[正規表現ベースの指定] の場合は必須です。

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

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

    機密データコンテンツ正規表現による指定 の場合、必須です。

  • 設定例

    ターゲットフィールドの値全体を文字列に置き換えます。

    • 生ログ

      "password" : "123abcdefg"
    • Logtail プラグイン構成:[プロセッサータイプ] を [データマスキング] に設定し、[ソースフィールド] を password、[データマスキング方法] を [文字列置換]、[機密データの内容] を [フィールド全体]、[置換文字列] を ******** に設定します。

    • 処理結果

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

JSON

typeprocessor_desensitize に設定します。detail オブジェクト内のパラメーターを次の表に示します。

  • パラメーター

    パラメーター

    タイプ

    必須

    説明

    SourceKey

    String

    はい

    ログフィールドの名前です。

    Method

    String

    はい

    データマスキングの方法です。有効値:

    • const:機密コンテンツを文字列に置き換えます。ReplaceString パラメーターを使用して、ターゲット文字列を指定できます。

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

    Match

    String

    いいえ

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

    • full (デフォルト):フィールドの値全体を置き換えます。

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

    ReplaceString

    String

    条件付き

    機密コンテンツを置き換える文字列です。

    Methodconst に設定されている場合に必要です。

    RegexBegin

    String

    条件付き

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

    Matchregex に設定されている場合に必要です。

    RegexContent

    String

    条件付き

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

    Matchregex に設定されている場合に必要です。

  • 設定例

    • 例 1

      ターゲットフィールドの値全体を文字列に置き換えるには、MethodconstMatchfull に設定します。

      • 生ログ

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

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

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

      正規表現を使用して機密コンテンツを指定し、MD5 ハッシュに置き換えるには、Methodmd5Matchregex に設定します。

      • 生ログ

        "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 プラグインは、指定したフィールドの内容を暗号化します。

構成

フォーム

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

パラメーター

説明

[元のフィールド]

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

[AccessKey ペア]

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

[初期ベクトル]

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

[保存パス]

暗号化パラメーターを含むファイルへのパスです。指定しない場合、プラグインは Logtail 構成の [入力] 設定にある [ファイルパス] を使用します。

[生データの保持に失敗しました]

このオプションを選択すると、暗号化に失敗した場合にソースフィールドの値が保持されます。

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

JSON

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

パラメーター

タイプ

必須

説明

SourceKey

文字列の配列

はい

暗号化するソースフィールドです。

EncryptionParameters

オブジェクト

はい

暗号化設定です。

Key

文字列

はい

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

IV

文字列

いいえ

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

KeyFilePath

文字列

いいえ

暗号化パラメーターを含むファイルへのパスです。指定しない場合、プラグインは Logtail 構成の [入力] 設定にある [ファイルパス] を使用します。

KeepSourceValueIfError

ブール値

いいえ

暗号化に失敗した場合にソース値を保持するかどうかを指定します。

  • true :ソース値を保持します。

  • false (Default) :ソース値を保持しません。

    代わりに、フィールド値は ENCRYPT_ERROR に置き換えられます。

データエンコーディングとデコーディング プラグイン

processor_base64_encodingprocessor_base64_decodingprocessor_md5 プラグインは、フィールド値をエンコードおよびデコードします。

制限事項

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

  • JSON ベースの設定:テキストログの収集ではサポートされていません。

Base64 エンコーディング

processor_base64_encoding プラグインは、フィールド値を Base64 エンコードします。

フォーム

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

パラメーター

説明

[元のフィールド]

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

[結果フィールド]

エンコード後の結果フィールドの名前です。

[元のフィールド欠落のエラー報告]

ソースログにソースフィールドが見つからない場合にエラーを報告するには、このオプションを選択します。

JSON

typeprocessor_base64_encoding に設定します。次の表に、detail オブジェクトのパラメーターを示します。

パラメーター

タイプ

必須

説明

SourceKey

文字列

はい

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

NewKey

文字列

はい

エンコード後の結果フィールドの名前です。

NoKeyError

ブール値

いいえ

ソースログにソースフィールドが見つからない場合にエラーを報告するかどうかを指定します。

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

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

Base64 デコーディング

processor_base64_decoding プラグインは、フィールド値を Base64 デコードします。

フォーム

[プロセッサータイプ]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 (デフォルト値):エラーを報告しません。

関連ドキュメント