맨위로가기

ISAPI

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

ISAPI는 확장 기능과 필터 두 가지 유형의 애플리케이션으로 구성되며, IIS 웹 서버에서 실행되는 동적 링크 라이브러리(DLL)이다. ISAPI 확장 기능은 IIS에서 실행되는 응용 프로그램으로, 특정 파일 확장자나 폴더를 처리하도록 매핑될 수 있다. ISAPI 필터는 IIS 기능을 수정하거나 향상시키는 데 사용되며, 요청을 필터링하고 데이터 스트림을 검사, 수정한다. ISAPI는 C, C++, 델파이 등 다양한 언어로 개발 가능하며, MFC, ATL Server, Intraweb 등 개발을 용이하게 하는 라이브러리가 존재한다. 대표적인 ISAPI 애플리케이션으로는 ASP, ActiveVFP, ASP.NET, ColdFusion, Perl ISAPI, PHP 등이 있다.

더 읽어볼만한 페이지

  • 마이크로소프트 API - 윈도우 API
    윈도우 API는 마이크로소프트 윈도우 운영 체제에서 응용 프로그램이 시스템 기능에 접근하도록 돕는 인터페이스 집합이며, 다양한 버전으로 발전해 왔고, 현재 Win32가 널리 사용되며, 유연성을 제공하지만 복잡하다는 단점을 보완하기 위해 다양한 래퍼 라이브러리가 개발되었다.
  • 마이크로소프트 API - WinFS
    WinFS는 마이크로소프트가 개발한 파일 시스템으로, 검색 기능 내장 및 메타데이터 관리를 통해 데이터 관리 효율성을 높이는 것을 목표로 했으나 별도 제품으로 출시되지는 못하고 핵심 기능들이 윈도우 비스타 이후 기술에 통합되었다.
ISAPI

2. ISAPI 애플리케이션

ISAPI는 크게 확장 기능(Extensions)과 필터(Filters) 두 가지 유형의 애플리케이션으로 구성된다.[1] 이들은 모두 DLL 파일로 컴파일되어 IIS에 등록되어야 웹 서버에서 실행될 수 있다.

ISAPI 애플리케이션은 C, C++, 델파이 등 표준 C 함수를 내보낼 수 있는 모든 언어를 사용하여 작성할 수 있다. 델파이 파스칼에서는 웹 애플리케이션 개발을 위한 Intraweb 구성 요소가 있으며, MFC는 ISAPI 애플리케이션 개발을 위한 클래스를 포함한다. 또한 ISAPI 애플리케이션 개발에 특화된 C++ 라이브러리를 포함하는 ATL Server 기술도 있다.

2. 1. 확장 기능 (Extensions)

ISAPI 확장 기능은 IIS에서 실행되는 실제 응용 프로그램으로, IIS에서 제공하는 모든 기능에 접근할 수 있다. ISAPI 확장 기능은 IIS에서 제어되는 프로세스에 로드되는 DLL로 구현된다. 클라이언트는 정적 HTML 페이지에 접근하는 것과 동일한 방식으로 ISAPI 확장 기능에 접근할 수 있으며, 특정 파일 확장자 또는 전체 폴더나 사이트가 ISAPI 확장 기능에서 처리되도록 매핑할 수 있다.[1]

2. 2. 필터 (Filters)

ISAPI 필터는 IIS의 기능을 수정하거나 향상시키는 데 사용된다. 필터는 들어오고 나가는 데이터 스트림을 모두 검사하고 수정하도록 프로그래밍할 수 있으며, 사이트 수준 또는 전역 수준(IIS 서버의 모든 사이트에 적용)에서 IIS 서버에 등록할 수 있다. ISAPI 필터는 일반적으로 다음과 같은 작업을 수행한다.[1]

  • 클라이언트가 보낸 요청 데이터 (URL 또는 헤더) 변경
  • URL에 매핑되는 실제 파일 제어
  • 익명 또는 기본 인증에 사용되는 사용자 이름 및 암호 제어
  • 인증 완료 후 요청 수정 또는 분석
  • 클라이언트로 다시 전송되는 응답 수정
  • "액세스 거부" 응답에 대한 사용자 지정 처리 실행
  • 요청 완료 시 처리 실행
  • 클라이언트와의 연결이 닫힐 때 처리 실행
  • 특수 로깅 또는 웹 분석 수행
  • 사용자 지정 인증 수행
  • 암호화 및 압축 처리

2. 3. 대표적인 ISAPI 애플리케이션


  • ASP는 표준으로 설치된다.
  • ActiveVFP, IIS에 설치된 Active Visual FoxPro
  • ASP.NET은 IIS 6.0 이상에서 표준으로 설치된다.
  • ColdFusion은 IIS에 설치할 수 있다.
  • Perl ISAPI (aka Perliis)는 무료로 설치할 수 있다.
  • PHP는 무료로 설치할 수 있지만 더 이상 유지 관리되지 않는다.[2]

3. ISAPI 개발

ISAPI 애플리케이션은 Windows DLL을 생성할 수 있는 모든 개발 도구를 사용하여 개발할 수 있다. 표준 C 함수를 내보낼 수 있는 C, C++, 델파이 등 모든 언어를 사용할 수 있다.[1] Visual C++ 4.0 이후부터는 ISAPI 프레임워크 애플리케이션 생성을 위한 마법사가 마이크로소프트 개발 도구에서 제공되었다.

ISAPI 애플리케이션 개발을 쉽게 해주는 라이브러리로는 델파이 파스칼의 Intraweb 구성 요소가 있다. MFC는 ISAPI 애플리케이션 개발을 위한 클래스를 포함하며, ATL Server 기술은 ISAPI 애플리케이션 개발에 특화된 C++ 라이브러리를 포함한다.

참조

[1] 서적 Web commerce security : design and development Wiley Pub 2011
[2] 웹사이트 PHP :: Bug #48299 :: Missing php5isapi.DLL in package https://bugs.php.net[...]



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com