ISAPI フィルタは、Web サーバーが HTTP 要求を受け取った際に応答するプログラムです。ただし、ISAPI 拡張とは異なり、ISAPI フィルタは常にサーバー プロセスで実行されます。ISAPI フィルタは、クライアントからの要求ではなく、Web サーバーのイベントによって呼び出される点がアプリケーションとは異なります。ISAPI フィルタを特定の Web サーバーのイベントに関連付けると、その関連付けられたイベントが発生するたびにフィルタが呼び出されます。たとえば、読み取りまたは書き込みのイベントが発生したときにフィルタを呼び出して、クライアントに返すデータを暗号化することができます。
サーバーのすべてのサイトに適用されるフィルタ (グローバル フィルタ) をインストールすることも、個々の Web サイトに適用されるフィルタをインストールすることもできます。グローバル フィルタとサイト フィルタの両方をインストールした場合は、2 つのフィルタ リストがマージされてサイトに適用されます。
同じイベントに対して複数のフィルタが登録されている場合、フィルタは順番に呼び出されます。優先順位の高いフィルタは、優先順位の低いフィルタより先に実行されます。同じ優先順位のフィルタが複数ある場合は、マスタ プロパティで設定されたグローバル フィルタが、サイト レベルで設定されたフィルタより先に実行されます。同じ優先順位で同じ継承レベルにあるフィルタは、読み込まれた順序で実行されます。フィルタが読み込まれる順序は、Web サーバーまたは Web サイトのプロパティ シートで変更できます。
Web サーバーまたは Web サイトにフィルタを追加するには注 Web サイトにフィルタを追加する場合、Web サーバーのマスタ プロパティから継承されたグローバル フィルタは表示されません。両方のフィルタが実行されていても、Web サイトにインストールされたフィルタだけが表示されます。
注 フィルタが読み込まれる順序を変更できるのは、同じ優先順位のときだけです。
注 HTTP 要求によってフィルタの登録先のイベントが発生すると、それがファイル、CGI アプリケーション、または ISAPI 拡張のいずれに対する要求であっても、要求に含まれるデータがフィルタに渡されます。