2013-04-18 22 views

Odpowiedz

0

w początku sesji - funkcja obsługi zdarzenia:

że masz tablicę zablokowany tj Code (tekst) IP:

Dim Barr() As String = { "198.122.xxx.xx" „xxx.xxx.xx.xxx” itd.}

Code (tekst):

Dim strIP = Request.ServerVariables("HTTP_X_FORWARDED_FOR") 
If strIP="" Then strIP = Request.ServerVariables("REMOTE_ADDR") 

For i As integer = 0 To bArr.UperBound 
    If strIP = bArr(i) Then 
    Response.Redirect("Permissionsdenied.html") 
    End If 
Next 
+1

nie znaczy początek sesji ... chcesz sprawdzić dla każdego żądanie, a nie tylko pierwsze w sesji. – Nathan

+1

Session_Start() - To zdarzenie jest wywoływane za każdym razem, gdy rozpoczyna się nowa sesja, Jest to dobre miejsce na umieszczenie kodu, który jest specyficzny dla sesji. – Varun

+0

Masz rację, to tam powinien iść kod specyficzny dla sesji, ale ten kod nie powinien być specyficzny dla sesji: jeśli otworzę nową przeglądarkę i zażądam strony A z Twojej strony, twój kod zostanie uruchomiony ... ta sama przeglądarka, ja wtedy wykonuję tę samą prośbę - i zgadnijcie, co ... to się powiedzie po raz drugi (co nie jest tym, co pożądane) – Nathan

0

Chciałbym zacząć w ten sposób, w pocz żądania obsługi zdarzeń w swojej globalnej klasy, chciałbym ustalićadres IP klienta następujący po tej odpowiedzi: https://stackoverflow.com/a/9567439/559144

, a następnie, jeśli łączący się adres IP nie znajduje się na liście dozwolonych, przekierowuję na inną stronę, na przykład stronę z odmową dostępu, stronę logowania lub stronę główną firmy/google.

2

This jest dobrym punktem wyjścia dla ciebie

(zwłaszcza jak to ładnie oddzielone w HttpModule do późniejszego ponownego użycia)

Powiązane problemy