暗号化ルールの条件

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:2分
  • 暗号化ルールの条件は、ルールを実行する必要があるかどうかを決定します。

    ルールにより HTTP 要求を処理する必要がある場合は、暗号化ルールの条件が True を返す必要があります。それ以外の場合は False を返す必要があります。

    条件を作成する際は、要求ごとに 1 つのルールしか実行されないことに注意してください。そのため、意図した状況の下で実行されるように、必要に応じて条件を汎用的にしたり具体的にしたりする必要があります。
    注:
    条件内の内容のチェックを実行するときは注意が必要です。過度のチェックはプロキシサーバーに大きな負荷がかかることがあります。また、複雑な要求を処理するときに遅延が増大する要因となる場合があります。
    条件では、メソッドのタイプ、コンテンツ タイプ、URL パス、または URL クエリー文字列パラメータを使用して、ルールで要求を処理する必要があるかどうかを判断できます。条件からは、要求 オブジェクトを介してこれらのフィールドにアクセスできます。暗号化ルールの条件を作成するにあたっては、必ず事前にクライアント要求を調べ、ルールをトリガーするために必要な条件を理解しておいてください。
    注:
    効率的なルールを作成するため、ルールで評価する必要のない要求を除外するための簡単な方法を検討してください。最初にそれらの要求に対して False を返すように条件を作成します。これによりパフォーマンスが向上し、要求が正しいルールにルーティングされるスピードが速まります。

    暗号化ルールのオブジェクトと API を暗号化ルールの条件で使用できます。

    path と postParams を使用した例

    /*This condition checks if the request coming in has a path ending in 
    "/sample_processor.do" and if a post parameter exists in that request called myPostParam */
    
    function SampleCondition(request) {
       if (endsWith(request.path, "/sample_processor.do") && request.postParams.myPostParam) {
           return true;
       }    
       return false;
    }

    urlParams と contentType を使用した例

    /* This condition checks if a url parameter exists in the query called 
    myUrlParam and if the content type contains 'xml' 
    (if so, you can expect the body to be an XML payload). 
    Then, it checks if the xml payload contains myXmlTag */
    
    function SampleCondition2(request) {
       if (request.urlParams.myUrlParam && request.contentType.indexOf('xml') > -1 && request.xmlContains('myXmlTag')) {
           return true;
       }    
     return false;
    }