ISAPI

出典: フリー百科事典『ウィキペディア(Wikipedia)』

Internet Server Application Programming Interface (ISAPI) は、マイクロソフトWindows NT系に付属(一部除く)するIISn層API。主にWebサーバとして利用されている。

Apacheにおいても、mod_isapiを利用することにより、IISのISAPIと互換性のある環境を構築できる。

ISAPI アプリケーション[編集]

ISAPIはExtensionsとFiltersの2つの構成要素からなる。これら2つの構成要素はC++での開発となる。また、作成したDLLファイルはIISに登録しなければならない。

ISAPI Extensions[編集]

IIS Extensionsを利用すると、プログラムはIIS上で動作する。また、IIS ExtensionsはIISの全ての機能を利用することができるようになる。

ISAPI Filters[編集]

IIS FiltersはIISの機能強化、または機能の修正を行うために用いられる。IIS Filtersを利用してデータの入出力を作成したプログラムが行えるようになる。

作成したプログラムはDLLファイルで、IISにサイトレベル、または管理下にある全てのIISに登録する。

ISAPI Filtersを利用して、主に以下の様なジョブが利用されている。

  • クライアントからのURLやHTTPヘッダのリクエスト解析
  • 匿名または基本認証のコントロール
  • 独自のアクセス拒否(HTTP 403)の応答
  • トラフィック解析
  • 独自の認証
  • 暗号化や圧縮

等、多様なジョブを実行できる。

代表的な ISAPI アプリケーション[編集]

ISAPI 開発[編集]

ISAPIを利用してのアプリケーション開発は、Visual C++ 4.0からサポートされている。Wizardを利用してISAPIフレームワークを作成できる。開発は主にMFCを利用して開発する。