URL フィルタの追加

  1. ご使用の環境に応じて、PHP 構成ファイル php.ini または appdynamics_agent.ini を編集します。
  2. PHP 構成ファイルで、次の設定を構成します。
    次の構成の ini ファイルの値に英数字以外の文字が含まれている場合は、PHP のガイドラインに従って二重引用符(")で囲む必要があります。
    • 構成デリミタ:編集で機密データフィルタの構成デリミタとして使用する文字を指定します。構成デリミタには、編集構成文字列に含まれない文字を選択する必要があります。この値は必須です。
      例:
      agent.sensitive_data_filter.configDelimiter = "|"
    • URL デリミタ:URL セグメントのエンドポイントとして使用する文字を指定します。エージェントは各デリミタインスタンスで URL を分割してセグメントを作成します。HTTP の場合は、スラッシュ文字 "/" を使用してください。スラッシュの場合、エージェントはプロトコル直後のスラッシュでは分割しません。たとえば、"https://myapp.example.com/" は 1 つのセグメントを構成します。デフォルトではデリミタは "/" ですが、正常な編集にはこのデリミタが必須です。
      例:
      agent.sensitive_data_filter.delimiter = "/"
      注: 「#」および「;」は ini ファイルでコメントとみなされるため、デリミタまたは configDelimiter として使用することはできません。
    • セグメント:エージェントがフィルタ処理するセグメントを指定するには、カンマ区切りのリストを指定します。セグメントの番号付けは 1 から始まるため、0 または負の値を指定すると、エージェントログにエラーメッセージが表示され、セグメントの編集が失敗します。セグメント番号は昇順である必要があります。この値は必須です。
      例:
      agent.sensitive_data_filter.segment = "2,3"
    • Matchfilter:-  から、URL の照合に使用するフィルタのタイプを指定します。REGEX を使用する場合は、PERL 標準に従う必要があります。値は必須です。

      これを正しく使用するには、照合フィルタリングでクエリパラメータを考慮してはなりません。コール "https://myapp.example.com/sensitive/data?first_name=abc&last_name=xyz" の例では、照合フィルタを STARTSWITH として指定するには、ホスト名(この例では "https://myapp.example.com")で始まる指定された文字列と照合します。URL のホスト名にポートが含まれている場合は、構成文字列に含める必要があります。同様に、ENDSWITH については、クエリパラメータはスナップショットで報告されないため、クエリパラメータから除外される最後のセグメント(この例では “data”)に対応します。

      次に例を示します。
      agent.sensitive_data_filter.matchPattern = "myapp"
    • ParamPattern:フィルタするクエリパラメータに一致する正規表現を指定します。正規表現の場合は、PERL 標準に従う必要があります。この値は任意です。
      agent.sensitive_data_filter.paramMatcher = "[a-z]+_name"
たとえば、次の構成は URL を "/" 文字で分割し、URL の 2 番目のセグメントと、3 番目のセグメントの ParamPattern をマスクします。この場合、セグメンテーションと難読化は "myapp" を含む URL にのみ適用されます。
agent.sensitive_data_filter.configDelimiter = "|" 
agent.sensitive_data_filter.delimiter = "/" 
agent.sensitive_data_filter.segment = "2" 
agent.sensitive_data_filter.matchFilter = "CONTAINS"
agent.sensitive_data_filter.matchPattern = "myapp" 
agent.sensitive_data_filter.paramMatcher = "[a-z]+_name"

"https://myapp.example.com/sensitive/data?first_name=abc&last_name=xyz" への exit コールは、"https://myapp.example.com"、"sensitive"、および "data?first_name=abc&last_name=xyz" という 3 つのセグメントに分割されます。コントローラには、スナップショットの詳細に URL と param-pattern のマスクされた値が "https://myapp.example.com/*****/data?first_name=***&last_name=***" のように表示されます。

クエリパラメータに値を使用しない場合、コントローラは URL 内のクエリパラメータをマスクしません。