Internet Server API

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.

Internet Server API (ISAPI) ist eine Programmierschnittstelle (Application Programming Interface) von Microsoft, die im Microsoft Internet Information Services (Webserver), dem Microsoft Exchange Server und im Microsoft Internet Security and Acceleration Server (Firewall und Web Cache) verwendet wird. Man unterscheidet ISAPI-Extensions und ISAPI-Filter.

ISAPI-Extensions[Bearbeiten]

ISAPI-Erweiterungen sind als nächste Generation der CGI-Anwendungen anzusehen, können jedoch ohne entsprechende Zusatzprogramme von Drittanbietern ausschließlich auf Microsoft-Servern ausgeführt 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 können ISAPI-Erweiterungen dabei gemeinsam von einer Host-Anwendung (diese wird zum Ausführen von DLLs benötigt), oder getrennt voneinander ausgeführt werden.

Vor- und Nachteile[Bearbeiten]

Als Vorteil ist der Geschwindigkeitsgewinn zu nennen. Im Gegensatz zu Skripts wie ASP oder PHP besteht eine ISAPI-Erweiterung aus kompiliertem Quelltext, wie auch die in Microsoft-Betriebssystemen eingesetzten System-DLL-Dateien. ISAPI-Erweiterungen ermöglichen einen tieferen Eingriff in die Software des ausführenden Systems, wodurch vorhandene Ressourcen (z. B. Arbeitsspeicher, aber auch andere Geräte wie zum Beispiel Videoschnittkarten, ISDN-Adapter-Karten, etc.) besser genutzt und direkt adressiert werden können. Im Gegensatz zu Skript-Dateien sind ISAPI-Erweiterungen nicht in Klartext lesbar, was einen Angriff jedoch nicht erschwert. Ein Risiko für die Sicherheit des Systems stellen alle unbekannten, z.B. dynamisch über den Browser geladenen, externen .DLL-Dateien dar. Diese enthalten ausführbaren Programmcode und können unkontrolliert Daten auslesen oder manipulieren.

ISAPI-Filter[Bearbeiten]

ISAPI-Filter sind DLLs, die im Web-Dienst hinzugefügt werden können, um auf bestimmte Ereignisse im Vorfeld einzugreifen.

ISAPI-Filter greifen direkt in den Datenverkehr eines Webservers oder Proxys ein. Dadurch können sie die übertragenen Daten lesen und verändern.

Überblick[Bearbeiten]

ISAPI-Filter sind, anders als ISAPI-Erweiterungen, bereits nach dem Starten des Webservers im Speicher resident. Sie befinden sich zwischen dem Webserver und dem Client.

ISAPI-Filter werden im Microsoft Exchange Server zum Beispiel zur Authentifizierung verwendet.

Anwendungsbeispiel[Bearbeiten]

Ein Beispiel für ISAPI-Filter bzw. ISAPI-Erweiterungen ist die im Microsoft Internet Information Server integrierte asp.dll, die zur Ausführung von ASP-Dateien dient, sowie die separat installierbare php.dll, mit der PHP-Dateien auf einem Microsoft Webserver ausgeführt werden können.