W £rodowisku Active Server Pages (ASP) mo┐na generowaµ niestandardowe zapisy inspekcji pomocne w dok│adnym monitorowaniu aktywno£ci zabezpiecze± okre£lonej witryny sieci Web. Przypu£µmy na przyk│ad, ┐e administrator jest zainteresowany w inspekcji uwierzytelnie± dla witryny sieci Web o ograniczonym dostΩpie. Korzystaj╣c z ASP mo┐na utworzyµ po stronie serwera zwarty skrypt dodawany do strony logowania witryny sieci Web, rejestruj╣cy tylko uwierzytelnione nazwy kont u┐ytkownik≤w, kt≤rzy uzyskali dostΩp do danej witryny.
Aby utworzyµ zapis inspekcji za pomoc╣ ASP<% 'Znajdƒ fizyczn╣ £cie┐kΩ dla pliku w katalogu bie┐╣cym. MainPath = Request.ServerVariables("PATH_TRANSLATED") 'Okre£l £cie┐kΩ dla bie┐╣cej strony, a nastΩpnie usu± nazwΩ 'pliku z tej £cie┐ki (zostawiaj╣c tylko katalog). Length = Len(MainPath) Do While (Mid(MainPath, Length, 1) <> "\") Length = Length - 1 Loop FilePath = left(MainPath, Length) LogFilePath = FilePath + "LogFile.log" 'Otw≤rz plik dziennika, aby nowe elementy mog│y byµ do│╣czane poprzednich Application.Lock Set FileObject = Server.CreateObject("Scripting.FileSystemObject") Set OutStream=FileObject.OpenTextFile(LogFilePath, 8, TRUE) 'Zdefiniuj zmienne do umieszczenia w pliku dziennika. UserName=Trim(Request.ServerVariables("HTTP_LOGONUSER") ) If Len(UserName) < 2 Then UserName = "Anonymous" Host=Request.ServerVariables("REMOTE_HOST") IPAddr = Request.ServerVariables("REMOTE_ADDR") If Host <> IPAddr Then Host = Host + " (" + IPAddr + ")" 'Zapisz informacje w pliku tekstowym OutStream.WriteLine UserName&" from "& Host &" visited "&MainPath& " at " & Time &" on " & Date OutStream.Close Set OutStream = Nothing Application.Unlock %>
Notka Je£li plik .asp nie ma ┐adnej zawarto£ci, takiej jak tekst lub obrazy, w przegl╣darce nie bΩd╣ wy£wietlane ┐adne informacje.
Notka W podanym skrypcie przyk│adowym zosta│y u┐yte zmienne £rodowiska serwera ASP do zebrania informacji o nazwie logowania u┐ytkownika, nazwie hosta i adresie IP. W│asne skrypty mo┐na rozszerzyµ u┐ywaj╣c innych dostΩpnych zmiennych serwera, takich jak zmienne do sprawdzania, czy ┐╣danie HTTP odebrane przez stronΩ ASP zosta│o obs│u┐one przez bezpieczny port komunikacyjny. WiΩcej informacji mo┐na znaleƒµ w temacie Obiekt Request.