ご意見をお寄せいただきありがとうございました

この記事は機械翻訳されています.免責事項

ポリシー拡張

ポリシー拡張機能を使用すると、組み込みのポリシータイプの拡張機能を記述できます。拡張機能は、組み込み関数と同様に、ポリシー式で使用できます。これらは、対応するポリシー式が評価されるときに実行されます。この機能は次の場合に役立ちます。

  • カスタマイズした機能を既存のポリシーに追加する。
  • 複雑な顧客要件のための論理構造の実装。

ポリシー拡張機能は、組み込みのポリシータイプの拡張機能をユーザが記述できるようにすることで、これらの制限に対処します。拡張機能は、組み込み関数と同様に、ポリシー式で使用できます。これらは、対応するポリシー式が評価されるときに実行されます。

次の表は、拡張機能の記述時に使用できるポリシータイプと、関連するマッピングの一覧です。

ポリシーの種類 マッピングされたポリシータイプ 出力
TEXT_T NSTEXT 文字列
BOOL_AT NSBOOL ブーリアン型
NUM_AT NSNUM 数値 (倍精度浮動小数点)
DOUBLE_AT NSDOUBLE 数値 (倍精度浮動小数点)

ポリシー拡張を使用するための前提条件

インポートされた関数は、既存のポリシー標準に準拠している必要があります。したがって、次のようになります。

  • 関数名は文字で始まり、数字またはアンダースコアを含むことができます。
  • Citrix ADCポリシーでは、関数名の大文字と小文字は区別されません。
  • 拡張言語が複数の値を返す場合でも、関数は 1 つの値を返す必要があります。
  • 可変数の引数を持つ関数はサポートされていません。

ポリシー拡張機能の仕組み

Citrix ADCアプライアンスの既存のポリシーは、インタープリタを使用して機能を評価します。これらの機能は、ポリシー拡張ファイルにインポートされます。ユーザーがポリシー拡張ファイルに新しい関数をインポートすると、次のようになります。

  1. 拡張子ファイルは、構文やその他の条件について検証されます。
  2. 検証が失敗した場合、エラーはユーザーに報告されます。
  3. 検証に成功すると、拡張ファイルはCitrix ADCアプライアンスにインポートされ、その内容は組み込みのポリシー機能と同様に、ポリシー式で使用できます。
    1. ポリシー式の評価が実行中にエラーを返した場合、その評価は undef イベントとして報告され、関連するエラーカウンタが増分されます。

      注: policy undef イベントが発生し、ポリシー規則に 1 つ以上のポリシー拡張機能が含まれている場合、show ns extension <name> コマンドはそれらのポリシー拡張に適用されると、undef ヒットを表示します。拡張機能が中断されると、中止カウンタの値が増加します。

    2. ポリシー式の評価が成功すると、式全体が評価されるまで、またはエラーのために中止されるまで、式の評価が再開されます。

拡張関数の実行に時間がかかりすぎると中止され、その拡張関数に関連するエラーカウンタが増加します。拡張関数はサンドボックス化され、次のことを防ぎます。

  • Citrix ADCアプライアンスで過剰なCPU使用率。
  • Citrix ADCアプライアンスのメモリ使用量が多すぎます。
  • 有害な組み込みライブラリまたはサードパーティのライブラリまたはバイナリの使用。
  • Citrix ADCアプライアンスが再起動する可能性がある長時間実行されるスクリプト。
このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。
ポリシー拡張