ICAP Connector

Version 25.3.9469


ICAP Connector


The ICAP connector enables seamless integration with Internet Content Adaptation Protocol (ICAP) servers in CData Arc. This connector facilitates content adaptation services, particularly real-time security scanning, by acting as an intermediary between your application and ICAP-compliant servers.

Key Capabilities

  • Real-time content adaptation and security scanning
  • Support for both request modification (REQMOD) and response modification (RESPMOD) modes
  • TLS encryption support for secure communications
  • Customizable HTTP encapsulation for legacy system compatibility
  • Flexible authentication options including private certificate support
  • Functions as a Transform step in the flow. Files that are flagged as needing attention yield errors, while other files proceed down the flow as usual.

Connector Configuration

This section contains all of the configurable connector properties.

Settings Tab

Settings related to the core configuration of the connector.

  • コネクタId コネクタの静的な一意の識別子。
  • コネクタの種類 コネクタ名とその機能の説明が表示されます。
  • コネクタの説明 コネクタとフローにおけるロールについて自由形式の説明を記載するオプションのフィールド。
  • ICAP URI (Required) The ICAP Uniform Resource Identifier (URI) of the ICAP server to connect to. Must be in this format: icap://<hostname>:<port>/<service_name>.
  • ICAP Headers Optional headers for specialized server requirements. Use this to add custom ICAP request headers that you want to include in the outgoing ICAP request.
  • TLS Configuration Check this to enable TLS encryption for the ICAP connection.
  • TLS Server Certificate The public key certificate used to verify the identity of an TLS/SSL server. This is only necessary if the ICAP server has enabled TLS. Set it to Any Certificate to unconditionally trust the ICAP server’s identity. Only relevant when TLS Configuration is enabled.
  • ローカルファイルスキーム コネクタがアウトプットするメッセージにファイル名を割り当てるスキーム。ファイル名にマクロを動的に使用して、識別子やタイムスタンプなどの情報を含めることができます。詳しくは、マクロ を参照してください。

Advanced Tab

TLS Client Authentication

  • Private Certificate Select, create, or upload the TLS certificate to use for authentication.
  • Certificate Password The password required to access the Private Certificate.

Other Settings

  • ICAP Mode Specify the type of ICAP transaction: use REQMOD for request modification or RESPMOD for response modification. The default is REQMOD.
  • ArcScript in Headers Allows for the evaluation of ArcScript expressions in the headers before the before the query is issued. For example, [_ | now('yyyy-MM-dd')] evaluates the current date, and [_message.header:headername] evaluates the headername header from the input message context.
  • ArcScript in URL Allows for the evaluation of ArcScript expressions in the URL before the query is issued. For example, [_ | now('yyyy-MM-dd')] evaluates the current date, and [_message.header:headername] evaluates the headername header from the input message context.
  • Preview size Controls the size of the message body preview sent to the ICAP server. Automatic makes your client query the server using an OPTIONS request to determine the optimal preview size. Alternatively, you can specify an exact number (in bytes) to use for the preview size.
  • Chunk size The maximum size (in bytes) of each data chunk sent after the preview phase (or for requests without a preview). The default is 16KB.
  • Timeout (seconds) The length of time in seconds that the connector waits for a connection response before throwing a timeout error. The default is 60 seconds.
  • Response Headers A comma-separated list of ICAP response header names (such as X-Infection-Found,X-Scan-Result) to be extracted and added as metadata to the processed message.
  • TLS Enabled Protocols The list of TLS/SSL protocols supported when establishing outgoing connections. Best practice is to only use TLS protocols. However, some obsolete operating systems do not support TLS 1.2. TLS v1.3 is not universally adopted, and might be refused if the destination server does not support it.

Proxy Settings

These are a collection of settings that identify and authenticate to the proxy through which the connection should be routed. By default, this section uses the global settings on the Proxy Settings portion of the Security Settings page. Clear the checkbox to supply settings specific to your connector.

  • プロキシの種類 プロキシベースのファイアウォールで使用されるプロトコル。
  • プロキシホスト プロキシベースのファイアウォールの名前またはIP アドレス。
  • プロキシポート プロキシベースのファイアウォールのTCP ポート。
  • プロキシユーザー プロキシベースのファイアウォールでの認証に使用するユーザー名。
  • プロキシパスワード プロキシベースのファイアウォールに認証するために使われるパスワード。
  • 認証スキーム デフォルトのNone のままにするか、以下の認証スキームから1つを選択します:BasicDigestProprietaryNTLM

Logging

Settings that govern the creation and storage of logs.

  • Log Level The verbosity of logs generated by the connector. When you request support, set this to Debug.
  • Log Subfolder Scheme Instructs the connector to group files in the Logs folder according to the selected interval. The Weekly option (which is the default) instructs the connector to create a new subfolder each week and store all logs for the week in that folder. Leaving this setting blank tells the connector to save all logs directly in the Logs folder. For connectors that process many transactions, using subfolders helps keep logs organized and improves performance.
  • Log Messages Check this to have the log entry for a processed file include a copy of the file itself. If you disable this, you might not be able to download a copy of the file from the Input or Output tabs.

Miscellaneous

Miscellaneous settings are for specific use cases.

  • Other Settings Enables you to configure hidden connector settings in a semicolon-separated list (for example, setting1=value1;setting2=value2). Normal connector use cases and functionality should not require the use of these settings.

Automation Tab

Automation Settings

Settings related to the automatic processing of files by the connector.

  • Send Whether files arriving at the connector are automatically sent as ICAP transactions.

Performance

コネクタへのリソースの割り当てに関する設定。

  • 最大ワーカー数 このコネクタでファイルを処理するためにスレッドプールで消費されるワーカースレッドの最大数。設定すると、高度な設定ページのパフォーマンス設定セクションのデフォルト設定がオーバーライドされます。
  • 最大ファイル数 コネクタに割り当てられた各スレッドが送信するファイルの最大数。設定すると、高度な設定ページのパフォーマンス設定セクションのデフォルト設定がオーバーライドされます。

アラートタブ

アラートの設定に関連する設定.

サービスレベル(SLA)を実行する前に、通知用のE メールアラートを設定する必要があります。デフォルトでは、Arc はアラートタブのグローバル設定を使用します。このコネクタに他の設定を使用するには、グローバル設定をオーバーライドをON にしてください。

デフォルトでは、エラーアラートが有効になっています。これはエラーが発生するたびにE メールが送信されることを意味します。アラートをオフにするには、有効化チェックボックスのチェックを外します。

件名(必須)を入力し、オプションでE メールの受信者のリストをカンマ区切りで入力します。

SLA タブ

サービスレベル(SLA)の設定に関連する設定.

サービスレベルでは、フロー内のコネクタが送受信すると予想される処理量を設定し、その量が満たされると予想される時間枠を設定できます。CData Arc は、サービスレベルが満たされていない場合にユーザーに警告するE メールを送信し、SLA を At Risk(危険) としてマークします。これは、サービスレベルがすぐに満たされない場合に Violated(違反) としてマークされることを意味します。これにより、ユーザーはサービスレベルが満たされていない理由を特定し、適切な措置を講じることができます。At Risk の期間内にサービスレベルが満たされなかった場合、SLA はViolated としてマークされ、ユーザーに再度通知されます。

SLA を定義するには、予想処理量をON にして設定タブをクリックします。

  • コネクタに個別の送信アクションと受信アクションがある場合は、ラジオボタンを使用してSLA に関連する方向を指定します。
  • ウィンドウの検知基準(最小)で:
    • 処理が予想されるトランザクションの最小値(量)に設定します
    • フィールドを使用して期間を指定します
    • SLA がいつ有効になるかを示します。開始日 を選択した場合は、日時フィールドを入力してください。
    • SLA を有効にする曜日のボックスをON にします。必要に応じて、ドロップダウンから毎日を選択します。
  • ウィンドウの期間終了前にステータスを’At Risk’ に設定するタイミングで、SLA がAt Risk としてマークされるタイミングを指定します。
    • デフォルトでは、通知はSLA が違反のステータスになるまで送信されません。これを変更するには、‘At Risk’ 通知を送信のチェックをON にします。

次の例は、月曜日から金曜日まで毎日1000ファイルを受信すると予想されるコネクタに対して構成されたSLA を示しています。1000ファイルが受信されていない場合、期間終了の1時間前にAt Risk 通知が送信されます。

Transactions Tab

This tab lists all messages associated with the connector. Use the search bar to find specific messages, or click the funnel icon to apply a filter. You can filter by time, message direction, and/or status.

Incoming responses appear on this tab.

Events Tab

  • Response This event lets you extend the way the connector interprets replies from the ICAP server. By default, the connector finalizes messages based on the ICAP server’s status code. However, since ICAP servers can also include scan details in response headers, the Response event lets you apply custom logic to those headers for more granular control. No output is created from this event; instead, you can use the arc:throw keyword to block the file (for example, if a particular header value indicates a failed scan).
  • Before Send This event fires after the connector has fully prepared a file to send/process a file, but before the sending/processing actually occurs.
  • After Receive This event fires after the connector has received a file.

The following are available in the Response event:

  • StatusCode: The ICAP response status code (such as 200, 204, or 4xx)
  • _response: The ICAP response. You can use [_response.header:xxx] to get a specific header.
  • _message: To refer to the input message (headers and body), and adding headers to the output.

Macros

ファイルの命名規則にマクロを使用することで、組織の効率とデータの文脈的理解を高めることができます。マクロをファイル名に組み込むことで、識別子、タイムスタンプ、ヘッダー情報などの関連情報を動的に含めることができ、各ファイルに有益なコンテキストを付与できます。これにより、組織にとって重要な詳細をファイル名に反映させることができます。

CData Arc はこれらのマクロをサポートしており、すべて次の構文を使用します:%Macro%

Macro 説明
ConnectorID コネクタのConnectorID を返します。
Ext コネクタが処理中のファイルの拡張子を返します。
Filename コネクタが処理中のファイルのファイル名(拡張子を含む)を返します。
FilenameNoExt コネクタが処理中のファイルのファイル名(拡張子なし)を返します。
MessageId コネクタがアウトプットするメッセージのMessageId を返します。
RegexFilename:pattern コネクタで処理中のファイルのファイル名にRegEx パターンを適用します。
Header:headername コネクタが処理中のメッセージのヘッダー(headername)の値を返します。
LongDate システムの現在の日時を長い形式(例:Wednesday, January 24, 2024)で返します。
ShortDate システムの現在の日時をyyyy-MM-dd 形式(例:2024-01-24)で返します。
DateFormat:format システムの現在の日時を指定されたフォーマット(format)で返します。使用可能な日付フォーマットについては、サンプル日付フォーマット を参照してください。
Vault:vaultitem 指定されたvault 項目の値を返します。

%Ext% や%ShortDate% などの引数を必要としないマクロもありますが、引数を必要とするマクロもあります。引数を渡すマクロはすべて次の構文を用います:%Macro:argument%

以下は、引数を渡すマクロの例です。

  • %Header:headername%:headername はメッセージのヘッダー名です。
  • %Header:mycustomheader% は、インプットメッセージで設定されたmycustomheader ヘッダーの値を返します。
  • %Header:ponum% は、インプットメッセージで設定されたponum ヘッダーの値に対応します。
  • %RegexFilename:pattern%:pattern は正規表現パターンです。例えば、%RegexFilename:^([\w][A-Za-z]+)% はファイル名の最初の単語と照合し、大文字と小文字を区別せずに結果を返します(test_file.xmltest に変換されます)。
  • %Vault:vaultitem%:vaultitem は、vault のアイテム名です。例えば、%Vault:companyname% はVault に保存されているcompanyname アイテムの値を返します。
  • %DateFormat:format%:format は使用可能な日付フォーマットです(詳細はサンプル日付フォーマット を参照してください)。例えば、%DateFormat:yyyy-MM-dd-HH-mm-ss-fff% はファイルの日付とタイムスタンプを返します。

以下の例に示すように、より詳細なマクロを作成することもできます。

  • 複数のマクロを1つのファイル名にまとめる:%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%%EXT%
  • マクロの外側にテキストを含める:MyFile_%DateFormat:yyyy-MM-dd-HH-mm-ss-fff%
  • マクロ内にテキストを含める:%DateFormat:'DateProcessed-'yyyy-MM-dd_'TimeProcessed-'HH-mm-ss%