機密フィールド

最終公開日 : Sep 25, 2026
Web フォームフィールドを機密情報として指定して、ユーザーが入力する情報を保護できます。通常、保護されたWebサーバーの1つ上のWebフォームにユーザーが入力した情報は、Citrix ADCログに記録されます。ただし、機密として指定された Web フォームのフィールドに入力された情報はログに記録されません。その情報は、Webサイトがそのようなデータを保存するように構成されている場合にのみ、通常は安全なデータベースに保存されます。
機密フィールド指定で保護する必要がある一般的な情報には、次のものがあります。
  • パスワード
  • クレジットカード番号、検証コード、有効期限
  • 社会保障番号
  • 納税者番号
  • 自宅住所
  • 非公開電話番号
eコマースサーバーでのPCI-DSSコンプライアンス、米国内の医療情報を管理するサーバーでのHIPAAコンプライアンス、その他のデータ保護基準への準拠には、適切な機密フィールド指定の使用が必要になる場合があります。
重要:
次の 2 つのケースでは、機密フィールドの指定が期待どおりに機能しません。
  • Webフォームに機密フィールドまたはアクションURLが256文字を超える場合、Citrix ADCログでフィールドまたはアクションURLがトランケートされます。
  • 特定の SSL トランザクションでは、機密フィールドまたはアクション URL のいずれかが 127 文字を超えると、ログはトランケートされます。
いずれの場合も、Web App Firewall は、通常の 8 文字の文字列ではなく、文字「x」で 15 文字の文字列をマスクします。機密情報を確実に削除するには、最初の 256 文字に一致するフォームフィールド名とアクション URL 式、または (SSL が使用されている場合) 最初の 127 文字を使用する必要があります。
保護されたWebサイトのWebフォームフィールドを機密として扱うようにWebApp Firewallを設定するには、そのフィールドを\[機密フィールド\]リストに追加します。フィールド名を文字列として入力することも、1 つ以上のフィールドを指定する PCRE互換の正規表現を入力することもできます。フィールドを追加するときに機密フィールド指定を有効にすることも、後で指定を変更することもできます。
Related information

コマンドラインインターフェイスを使用して機密フィールドを追加するには

コマンドプロンプトで、次のコマンドを入力します。
  • add appfw confidField <fieldName> <url> [-isRegex ( REGEX | NOTREGEX )] [-comment "<string>"] [-state ( ENABLED | DISABLED )]
  • save ns config

例

次の例では、名前が「パスワード」で始まるすべての Web フォームフィールドを機密フィールドの一覧に追加します。
add appfw confidField Password "https?://www[.]example[.]com/[^<>]\*[^a-z]password[0-9a-z._-]\*." -isRegex REGEX -state ENABLED
save ns config

コマンドラインインターフェイスを使用して機密フィールドを変更するには

コマンドプロンプトで、次のコマンドを入力します。
  • set appfw confidField <fieldName> <url> [-isRegex ( REGEX | NOTREGEX )][-comment "<string>"] [-state ( ENABLED | DISABLED )]
  • save ns config

例

次の例では、機密フィールドの指定を変更して、コメントを追加します。
set appfw confidField Password "https?://www[.]example[.]com/[^<>]\*[^a-z]password[0-9a-z._-]\*." -comment "Protect password fields." -isRegex REGEX -state ENABLED
save ns config

コマンドラインインターフェイスを使用して機密フィールドを削除するには

コマンドプロンプトで、次のコマンドを入力します。
  • rm appfw confidField <fieldName> <url>
  • save ns config

GUI を使用して機密フィールドを構成するには

  1. Security > Application Firewallに移動します。
  2. 詳細ウィンドウの \[**設定\]**で、\[機密フィールドの管理\] をクリックします。
  3. \[機密フィールドの管理\] ダイアログボックスで、次のいずれかの操作を行います。
    • 新しいフォームフィールドを一覧に追加するには、\[追加\] をクリックします。
    • 既存の機密フィールドの指定を変更するには、フィールドを選択し、\[編集\] をクリックします。 \[Web App Firewall 機密フィールド\] ダイアログボックスが表示されます。
    注:
    既存の機密フィールドの指定を選択し、\[追加\] をクリックすると、\[機密フォームフィールドの作成\] ダイアログボックスに、その機密フィールドの情報が表示されます。この情報を修正して、新しい機密フィールドを作成できます。
  4. ダイアログボックスで、要素を入力します。これには、次の種類のアカウントがあります。
    • **\[有効\] チェックボックス。**この機密フィールド指定を有効または無効にする場合は、選択または選択解除します。
    • **フォームフィールド名は正規表現チェックボックスです。**フォームフィールド名で PCRE-format 正規表現を有効にする場合は、選択または選択解除します。
    • **フィールド名。**特定のフィールド名を表すリテラル文字列または PCRE-format 正規表現を入力します。この正規表現は、パターンに続く名前を持つ複数のフィールドと一致します。
    • **アクションの URL。**機密フィールドを含む Web フォームが配置されている Web ページの 1 つ以上の URL を定義するリテラル URL または正規表現を入力します。
    • **コメント。**コメントを入力します。オプションです。
  5. \[ **作成\]**または\[ OK\]をクリックします。
  6. 機密フィールドの一覧から機密フィールドの指定を削除するには、削除する機密フィールドの一覧を選択し、\[削除\] をクリックして削除し、\[OK\] をクリックして選択を確定します。
  7. 機密フィールド指定の追加、変更、削除が完了したら、\[閉じる\] をクリックします。

例

以下に、便利なフォームフィールド名を定義する正規表現をいくつか示します。
  • \^passwd_ (Applies confidential-field status to all field names that begin with the “passwd_” string.)
  • \^((\[0-9a-zA-Z._-]*||\\x\[0-9A-Fa-f][0-9A-Fa-f])+-)?passwd_ (Applies confidential-field status to all field names that begin with the string passwd_, or that contain the string -passwd_ after another string that might contain non-ASCII special characters.)
有用な特定の URL タイプを定義する正規表現を次に示します。例では、独自のウェブホストとドメインを置き換えます。
  • WebフォームがWebホストwww.example.comの複数のWebページに表示されているが、それらのWebページすべてにlogon.pl?という名前が付けられている場合は、次の正規表現を使用できます。
    https?://www[.]example[.]com/([0-9A-Za-z][0-9A-Za-z_.-]*/)*logon[.]pl?
  • WebフォームがWebホストwww.example-español.comの複数のWebページに表示され、n-tilde(ñ)特殊文字が含まれている場合は、次の正規表現を使用できます。これは、n-tilde特殊文字を次のように表します。 C3 B1を含むエンコードされたUTF-8文字列、UTF-8文字セットのその文字に割り当てられた16進コード:
    https?://www[.]example-espa\xC3\xB1ol[.]com/([0-9A-Za-z][0-9A-Za-z_.-]\*/)\* logon[.]pl?
  • query.plを含むWebフォームがexample.comドメイン内の異なるホスト上の複数のWebページに表示される場合は、次の正規表現を使用できます。
    https?://([0-9A-Za-z][0-9A-Za-z_-.]*[.])\*example[.]com/([0-9A-Za-z][0-9A-Za-z_-.]\*/)*logon[.]pl?
  • query.plを含むWebフォームが、異なるドメインの異なるホスト上の複数のWebページに表示される場合は、次の正規表現を使用できます。
    https?://([0-9A-Za-z][0-9A-Za-z_-.]\*[.])\*[0-9A-Za-z][0-9A-Za-z_-.]+[.][a-z]{2,6}/([0-9A-Za-z][0-9A-Za-z_-.]*/)*logon[.]pl?
  • WebフォームがWebホストwww.example.comの複数のWebページに表示されているが、それらのWebページすべてにlogon.pl?という名前が付けられている場合は、次の正規表現を使用できます。
    https?://www[.]example[.]com/([0-9A-Za-z][0-9A-Za-z_-.]*/)*logon[.]pl?