• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

ログの難読化: ログ内の機密データをハッシュまたはマスクする

ログの難読化ルールを使用すると、特定の種類の情報がNewRelicに保存されないようにすることができます。

要件

ログの難読化機能は、 Data Plus オプションの一部としてご利用いただけます。

ログの難読化とは何ですか?

当社のサービスは、クレジットカード番号や社会保障番号など、機密事項である可能性が高いと判断された番号パターンを自動的にマスクします。

追加の難読化が必要な場合は、使用するログフォワーダー(たとえば、インフラストラクチャエージェント)の設定を調整するという方法があります。 しかし、より簡単なオプションは、 Data Plusで利用できる ログの難読化 機能 を使用することです。 この機能を使用すると、時間のかかる手動構成を行わずに、ログ管理 UI から直接、または NerdGraph API 経由でログ難読化ルールを設定できます。 機密情報に一致する正規表現を定義し、そのデータを難読化するルールを作成します。 機密情報をマスクするかハッシュするかを選択できます。

定義

重要な用語をいくつか紹介します。

  • Obfuscation rules

    難読化アクションを適用するログを定義します。

  • Obfuscation rule actions

    どの属性を調べるか、どのテキストを難読化するか、どのように難読化するか(マスキングまたはハッシュ化のいずれか)を定義します。

  • Obfuscation expressions

    難読化するテキストを識別する名前付き正規表現です。

  • Masking

    情報を完全に削除し、 X文字に置き換えます。 これが完了すると、特定の値を検索できなくなります。

  • Hashing

    情報を隠します。 ハッシュ ツールを使用して機密値のハッシュを取得し、そのハッシュを含むログを検索できます。

難読化の仕組み

次の例に表示されている JSON オブジェクトは、NerdGraph API で使用されるペイロードを簡略化したものです。 これにより、さまざまな API 操作とそれに対応する UI 操作をより適切に関連付けることができます。

例:難読化前のログレコード

次のようなログ記録があるとします。

{
"message": "The credit card number 4321-5678-9876-2345 belongs to user user@email.com (born on 01/02/2003) with SSN 123-12-1234",
"creditCardNumber": "4321-5678-9876-2345",
"ssn": "123-12-1234",
"department": "sales",
"serviceName": "loginService"
}

このログレコードには、いくつかの機密データが含まれています。理想的には、このようなログに仕上げることです。

{
"message": "The credit card number 9aa9bc1528859aee1b1df75795f1ebd54beb2f0d26c8a1d4580a71a07189cdd5 belongs to user user@email.com (born on XXXXXXXXXX) with SSN 30e6897f76dc102e32ee1d781c43417d259e586eac15c963d75ab8b5187769da",
"creditCardNumber": "9aa9bc1528859aee1b1df75795f1ebd54beb2f0d26c8a1d4580a71a07189cdd5",
"ssn": "30e6897f76dc102e32ee1d781c43417d259e586eac15c963d75ab8b5187769da",
"department": "sales",
"serviceName": "loginService"
}

例:基本的なプロセス

この例で機密データを難読化するために使用する基本的なプロセスは次のとおりです。

チェックリスト:ログを難読化する手順

ログを難読化するために

  1. ログに表示される機密データのパターンを特定して、ログの形状を調べます。例えば:

    • すべてのログに機密情報が含まれていますか?それとも、もっと具体的に(サービスAや地域Bのログのみ)教えてください。
    • クレジットカード番号、運転免許証番号、国民ID、生体認証、その他の値など、どのような機密情報が含まれていますか?
  2. 機密データを抽出する方法を識別するための難読化を作成します。

  3. ログのセットごとに難読化ルールを定義します。

    • NRQLを使ってどのように捕らえるかを定義する。
    • それぞれに適用する必要のある難読化アクションを定義します。自問してみてください:後でこの機密情報を使用してログを照会する必要がありますか( HASHを使用することを検討してください)、またはログからこの情報を完全に削除する必要がありますか( MASKを使用することを検討してください)?

ヒント

Logs obfuscation UI にはHashing toolが含まれており、既知の値からハッシュを見つけてコピーし、他の式やルールで使用することができます。

CPU制限

難読化には 1 分あたりの CPU 制限があります。 アカウントがこれらのリソース制限に達した場合、ログは期待どおりに難読化されません。 CPU 制限を確認するには、 Data management UI のシステムLimitsページに移動します。

1 分あたりの難読化 CPU 制限を超え、ログを難読化またはハッシュ化できない場合、難読化ルールが適用された属性はdroppedになり、属性が削除された理由を示すテキストに置き換えられます。 たとえば、難読化ルールがmessageフィールドに適用され、1 分あたりの CPU 制限に達した場合、結果のログは次のようになります。

{
...
"message": "<OBFUSCATION> The account is over its obfuscation per-minute limit, attribute dropped",
...
}

これは、PII やその他の機密データが誤って取り込まれるのを防ぐためです。

さらに、次の `NrIntegrationError' がアカウントにログ記録されます。

{
"category": "RateLimit",
"level": "error",
"limitName": "Log API obfuscation per account per minute",
"message": "You’ve exceeded our limit of per-account obfuscation time per-minute for the Log ingestion pipeline. Please reduce your usage or contact New Relic support.",
"name": "ObfuscationTimeLimitReached",
"newRelicFeature": "Logs",
"rateLimitType": "ObfuscationTimePerMinute",
"timestamp": 1678819264283
}

難読化ルールがどの程度機能しているかを評価し、どのルールがスキップされているかを確認するには、 Logs Obfuscation > Healthに移動します。 難読化ルールは CPU を大量に消費するため、これらのグラフは、リソース制限によって最も影響を受けるルールを判断するのに役立ちます。

難読化表現

New Relic UIを使用するか、GraphQL ExplorerであるNerdGraphを使用して、難読化式を作成、読み取り、更新、または削除できます。

one.newrelic.com > All capabilities > Logs > Obfuscation: まず 1 つ以上の難読化表現を作成し、次に難読化ルールを作成します。

サンプル表現

以下に、最も一般的な機密データの種類の一部を難読化するためのサンプル正規表現式をいくつか示します。 難読化表現は、それらの表現が使用されるNew Relicアカウントごとに作成する必要があります。

ヒント

次の例は、UI で使用できる正規表現です。 これらを GraphQL で使用するには、このに示すようにエスケープする必要があります。

難読化ルール

New Relic UIを使用するか、GraphQL ExplorerであるNerdGraphを使用して、難読化ルールを作成、読み取り、更新、または削除できます。

Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.