ISAPI 필터는 ISAPI 확장과 마찬가지로, 웹 서버가 HTTP 요청을 받을 때 응답하는 프로그램입니다. 그러나 ISAPI 확장과 달리 ISAPI 필터는 항상 서버 프로세스로 실행됩니다. ISAPI 필터는 클라이언트 요청이 아니라 웹 서버로 구동되므로 응용 프로그램과는 다릅니다. ISAPI 필터를 특정 웹 서버 이벤트와 연결하면, 연결된 이벤트가 발생할 때마다 해당 필터에 통지됩니다. 예를 들어, 읽기 또는 쓰기 이벤트가 발생한 다음, 클라이언트로 보낼 원시 데이터를 암호화할 때 필터에 알릴 수 있습니다.
서버의 모든 사이트에 대해 필터를 설치할 수 있으며(글로벌 필터) 개별 웹 사이트에 대해서도 필터를 설치할 수 있습니다. 글로벌 필터와 사이트 필터를 모두 설치하는 경우에는 두 필터 목록이 그 사이트에 대해 병합됩니다.
여러 필터가 같은 이벤트에 대해 등록된 경우에는 그 필터들이 연속으로 호출됩니다. 우선 순위가 높은 필터가 우선 순위가 낮은 필터보다 먼저 실행됩니다. 우선 순위가 같은 필터가 여러 개인 경우에는 마스터 속성에 설정된 글로벌 필터가 사이트 수준에서 설정된 필터보다 먼저 실행됩니다. 상속 수준이 같고 우선 순위도 같은 필터는 로드된 순서대로 실행됩니다. 웹 서버 또는 웹 사이트에 대한 속성 시트에서 필터 로드 순서를 변경할 수 있습니다.
웹 서버 또는 웹 사이트에 필터를 추가하려면참고 웹 사이트에 필터를 추가하는 경우에는 웹 서버의 마스터 속성에서 상속된 글로벌 필터가 표시되지 않습니다. 두 필터가 모두 실행되더라도 웹 사이트에 대해 설치된 필터만 표시됩니다.
참고 우선 순위가 같은 필터들에 대해서만 로드 순서를 변경할 수 있습니다.
참고 HTTP 요청이 필터가 등록된 이벤트를 트리거하면 그 필터는 요청이 파일에 대한 것이든, CGI 프로그램에 대한 것이든, ISAPI 응용 프로그램에 대한 것이든 관계 없이 요청에 포함된 데이터를 받습니다.