|
Sommario | Attacco | Crittologia | GnuPG/PGP | Programmazione | Sicurezza | Modifiche |
| Sommario / Programmazione / | |||||
|
Introduzione Microsoft fornisce agli sviluppatori un'interfaccia di programmazione che permette di estendere le funzionalità di alcuni suoi prodotti fra i quali IIS, Proxy Server e ISA Server. Questa interfaccia è rappresentata da ISAPI (Internet Server Application Programming Interface). CGI ed ISAPI Ogni giorno, in Internet vengono sviluppate nuove tecnologie con l'obiettivo di rendere ciò che appare come un modo per ottenere documenti fondamentalmente statici in qualcosa che permetta una certa interazione tra l'utente ed il documento stesso. Una prima soluzione a questo problema è stata l'introduzione, tempo fa, di una tecnica denominata CGI (Common Gateway Interface). Questa tecnica consente al Server Web di inoltrare informazioni provenienti dal programma di navigazione dell'utente ad un programma locale che, in base al dato ricevuto ed a seguito di un processo di elaborazione, fornisce un risultato. Questo viene di solito restituito all'utente come risposta in una nuova pagina HTML. Il dialogo tra il programma CGI ed il Web Server avviene di solito tramite l'uso dello Standard Input e dello Standard Output. Purtroppo, in Windows, questa modalità operativa praticamente non esiste e per superare questo problema Microsoft ha inizialmente proposto un nuovo standard denominato Win CGI, in cui, sostanzialmente, tutta la comunicazione tra il componente CGI ed il Server Web avviene tramite la creazione e la lettura di file sul disco. Questo ovviamente complica il funzionamento di CGI e può causare problemi se il server è costretto a richiamare lo stesso CGI più volte contemporaneamente. Una seconda e più efficiente soluzione è stata introdotta con Internet Information Server 2, l'interfaccia ISAPI. In sostanza, si fornisce al programmatore la possibilità di creare un'applicazione, DLL (Dynamic Link Library) o un eseguibile, che richiami determinate funzioni all'interno del Server Web stesso e che sia richiamata dal Server Web in determinate circostanze. In questo modo l'applicazione è in grado di ricevere e scambiare informazioni direttamente con il server. Chiaramente questa soluzione è molto più efficiente in termini di utilizzo della memoria e del processore del server e rende estremamente più semplice il passaggio di dati tra il server e l'applicazione ISAPI dato che la stessa, se necessario, può essere caricata in memoria ed eseguita nello spazio di memoria del server. D'altra parte però, questo comporta anche un serio problema di stabilità. In quanto, una applicazione ISAPI potrebbe, in caso di malfunzionamento, causare il blocco del server o dell'intero sistema. Non è il solo problema.
Lo sviluppo ed il debug di applicazioni ISAPI oltre a rappresentare un
processo lungo ed oneroso, potrebbe richiedere una eventuale interruzione
del servizio Web ad ogni modifica dell'applicazione stessa.
|
|
Copyright © 1998 - 2009 Antonio Magrì - Tutti i diritti riservati. Contatto. |