ADC

PCRE 文字エンコーディング形式

Citrix ADCオペレーティングシステムでは、印刷可能なASCII文字セット内の文字の直接入力のみをサポートしています 。16進コードを持つ文字は、16進数コード(ASCII 32)と16進数7E(ASCII 127)です。この範囲外のコードを含む文字を Web App Firewall 設定に含めるには、その UTF-8 の 16 進コードを PCRE 正規表現として入力する必要があります。

Web App Firewall 設定に URL、フォームフィールド名、またはセーフオブジェクト式として含める場合、多くの文字タイプでは PCRE 正規表現を使用してエンコードする必要があります。これには、次のものがあります。

  • 上限 ASCII 文字。16 進数の 7 F (ASCII 128) から 16 進数の FF (ASCII 255) までのエンコーディングを持つ文字。使用される文字マップに応じて、これらのエンコーディングは、制御コード、アクセントやその他の修正を加えた ASCII 文字、非ラテンアルファベット、および基本的な ASCII セットに含まれない記号を参照できます。これらの文字は、URL、フォームフィールド名、および安全なオブジェクト式で使用できます。
  • 2 バイト文字。2 つの 8 バイトワードを使用するエンコード文字です。2 バイト文字は、主に中国語、日本語、韓国語のテキストを電子形式で表現するために使用されます。これらの文字は、URL、フォームフィールド名、および安全なオブジェクト式で使用できます。

    ASCII 制御文字。プリンタにコマンドを送信するために使用される、印刷できない文字。16 進コードが 16 進数 20 (ASCII 32) 未満の ASCII 文字はすべて、このカテゴリに分類されます。ただし、これらの文字はURLまたはフォームフィールド名に表示されてはならず、安全なオブジェクト式に表示されることはめったにありません。

Citrix ADCアプライアンスは、UTF-8文字セット全体をサポートするのではなく、次の8文字セットに含まれる文字のみをサポートします。

  • 英語 (米国) (ISO-8859-1)。ラベルは「英語 US」と表示されますが、Web App Firewall は ISO-8859-1 文字セット (Latin-1 文字セットとも呼ばれます) のすべての文字をサポートします。この文字セットは、ほとんどの現代の西ヨーロッパ言語を完全に表し、残りの部分ではいくつかの珍しい文字を除くすべてを表します。

  • 繁体字中国語 (Big5)。Web App Firewall は、BIG5 文字セットのすべての文字をサポートします。この文字セットには、香港、マカオ、台湾で話され書かれた現代中国語で一般的に使用される繁体字中国語 (表意文字)、および中国本土以外に住む多くの中国民族遺産の人々によって含まれています。

  • 簡体字中国語 (GB2312)。Web App Firewall では、GB2312 文字セットのすべての文字がサポートされています。この文字セットには、中国本土で話され、書かれている現代中国語で一般的に使用される簡体字中国語 (表記) がすべて含まれています。

  • 日本語 (SJIS)。Web App Firewall では、Shift-JIS (SJIS) 文字セットのすべての文字がサポートされています。この文字セットには、現代日本語でよく使用されるほとんどの文字 (表意文字) が含まれます。

  • 日本語 (EUC-JP)。Web App Firewall は、EUC-JP 文字セット内のすべての文字をサポートします。この文字セットには、現代日本語でよく使用されるすべての文字 (表意文字) が含まれます。

  • 韓国語 (EUC-KR)。Web App Firewall は、EUC-KR 文字セットのすべての文字をサポートします。この文字セットには、現代韓国語で一般的に使用されるすべての文字 (表意文字) が含まれます。

  • トルコ語 (ISO-8859-9)。Web App Firewall は、現代トルコ語で使用されるすべての文字を含む ISO-8859-9 文字セットのすべての文字をサポートしています。

  • ユニコード (UTF-8)。Web App Firewall では、現代ロシア語で使用されている文字を含め、UTF-8 文字セットの特定の文字がサポートされています。

Web App Firewall を設定する場合、UTF-8 仕様でその文字に割り当てられた 16 進コードを使用して、すべての ASCII 文字を PCRE形式の正規表現として入力します。通常のASCII文字セット内の記号と文字は、その文字セットで1桁の2桁のコードが割り当てられ、UTF-8文字セットで同じコードが割り当てられます。たとえば、感嘆符 (!) はASCII文字セットで16進コード21が割り当てられ、UTF-8文字セットでも16進21になります。サポートされている別の文字セットのシンボルと文字には、UTF-8 文字セットでそれらに割り当てられた 16 進コードのペアセットがあります。たとえば、急性アクセント(á)の文字aには、UTF-8コードC3 A1が割り当てられます。

Web App Firewall 構成でこれらの UTF-8 コードを表す構文は、ASCII 文字の場合は「\ xNN」、英語、ロシア語、トルコ語で使用される非 ASCII 文字の場合は「\ xNN\ xNN」、中国語、日本語、韓国語で使用される文字の場合は「\ xNN\ xNN」です。たとえば、! を表す場合は、! を UTF-8 文字としてWeb App Firewall 正規表現に入力する場合は、「\ x21」と入力します。á を含める場合は、xC3xA1 と入力します。

注:

通常、ASCII 文字を UTF-8 形式で表現する必要はありませんが、これらの文字が Web ブラウザや基礎となるオペレーティングシステムを混乱させる可能性がある場合には、文字の UTF-8 表現を使用してこの混乱を避けることができます。たとえば、URL にスペースが含まれている場合、特定のブラウザや Web サーバーソフトウェアを混乱させないように、スペースを x20 としてエンコードできます。

次に、URL、フォームフィールド名、および ASCII 以外の文字を含むセーフオブジェクト式の例を示します。これらの文字は、Web App Firewall 設定に含めるには PCRE形式の正規表現として入力する必要があります。各例は、実際の URL、フィールド名、または式文字列を最初に示し、その後に PCRE-形式の正規表現を示します。

  • 拡張 ASCII 文字を含む URL。

    実際の URL:http://www.josénuñez.com エンコードされた URL:^http://www\[.\]jos\\xC3\\xA9nu\\xC3\\xB1ez\[.\]com$

  • 拡張 ASCII 文字を含む別の URL。

    実際の URL:http://www.example.de/trömso.html エンコードされた URL:^http://www[.]example[.\]de/tr\xC3\xB6mso[.]html$

    拡張 ASCII 文字を含むフォームフィールド名。

    実際の名前:nome_do_usuário エンコードされた名前:^nome_do_usu\ xC3\ xA1rio$

  • 拡張 ASCII 文字を含むセーフオブジェクト式。

    エンコードされていない式 [A-Z]{3,6} ¥[1-9\][0-9]{6,6} エンコードされた式: [A-Z]{3,6}\ xC2\ xA5 [1-9] [0-9] {6,6}

Unicode文字セット全体と一致するUTF-8エンコーディングを含むいくつかのテーブルがあります。次の表に、この情報を含む便利な Web サイトを示します。

http://www.utf8-chartable.de/unicode-utf8-table.pl

この Web サイトの表の文字が正しく表示されるようにするには、コンピュータに適切な Unicode フォントがインストールされている必要があります。そうしないと、文字の視覚的な表示に誤りがある可能性があります。ただし、文字を表示するための適切なフォントがインストールされていない場合でも、この Web ページの説明と UTF-8 および UTF-16 コードは正しいです。

PCRE 文字エンコーディング形式

この記事の概要