Internet Server API
Internet Server API (ISAPI) ist eine Programmierschnittstelle (Application Programming Interface) von Microsoft, die
- im Microsoft Internet Information Services (Webserver)
- im Microsoft Exchange Server
- im Microsoft Internet Security and Acceleration Server (Firewall und Web Cache)
verwendet wird, um die Ausfuhrung von (Web-)Anwendungen auf diesen Servern zu ermoglichen.
Man unterscheidet ISAPI-Extensions und ISAPI-Filter.
ISAPI-Extensions
[Bearbeiten | Quelltext bearbeiten]ISAPI-Erweiterungen sind als nachste Generation der CGI-Anwendungen anzusehen, konnen jedoch ohne entsprechende Zusatzprogramme von Drittanbietern ausschliesslich auf Microsoft-Servern ausgefuhrt werden.
Eine ISAPI-Erweiterung ist, anders als ein PHP- oder ASP-Skript, eine DLL-Datei, welche je nach Konfiguration bereits beim Starten oder erst bei Bedarf durch den Microsoft Internet Information Server geladen wird.
Je nach Anwendungssicherheit konnen ISAPI-Erweiterungen dabei gemeinsam von einer Host-Anwendung (diese wird zum Ausfuhren von DLLs benotigt) oder getrennt voneinander ausgefuhrt werden.
Vor- und Nachteile
[Bearbeiten | Quelltext bearbeiten]Als Vorteil ist der Geschwindigkeitsgewinn zu nennen.
ISAPI-Erweiterungen ermoglichen einen tieferen Eingriff in die Software des ausfuhrenden Systems, wodurch vorhandene Ressourcen (z. B. Arbeitsspeicher, aber auch andere Gerate wie Videoschnittkarten, ISDN-Adapter-Karten etc.) besser genutzt und direkt adressiert werden konnen.
Im Gegensatz zu Skripts wie ASP oder PHP besteht eine ISAPI-Erweiterung aus kompiliertem Quelltext (kompilierten Binardateien), wie die in Microsoft-Betriebssystemen eingesetzten System-DLL-Dateien, und ist daher nicht in Form ihres Quelltexts lesbar.
ISAPI-Filter
[Bearbeiten | Quelltext bearbeiten]ISAPI-Filter sind DLLs, die im Web-Dienst hinzugefugt werden konnen, um auf bestimmte Ereignisse im Vorfeld einzugreifen. Anders als ISAPI-Erweiterungen sind ISAPI-Filter bereits nach dem Starten des Webservers im Speicher resident.
ISAPI-Filter greifen direkt in den Datenverkehr eines Webservers oder Proxys ein. Dadurch konnen sie die ubertragenen Daten lesen und verandern. Im Microsoft Exchange Server werden sie z. B. zur Authentifizierung verwendet.
Anwendungsbeispiele
[Bearbeiten | Quelltext bearbeiten]Beispiele fur ISAPI-Filter bzw. ISAPI-Erweiterungen sind
- die im Microsoft Internet Information Server integrierte asp.dll, die zur Ausfuhrung von ASP-Dateien dient
- die separat installierbare php.dll, mit der PHP-Dateien auf einem Microsoft Webserver ausgefuhrt werden konnen.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- ISAPI Extension Overview (MSDN) (englisch)