Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692

    Limitare tentativi di accesso

    Ciao, ho realizzato con un db access un'area riservata per utenti registrati.

    Vorrei limitare a 3 il numero di tentativi massimi da eseguire quando si sbagliano i dati di autenticazione per l'accesso alla'rea riservata.

    Non ho idea da dove cominciare: qualche suggerimento? script da adattare? voi come fareste?
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  2. #2
    Potresti usare una variabile di sessione che incrementa il suo valore ogni volta che la password è sagliata. Quando arrivi a 3 impedisci l'esecuzione del login.
    Se uno vuole riprovare deve chiudere il browser e riaprirlo.

    Altrimenti potresti fare la stessa cosa ma con i cookies. Il problema è che in questo caso per ottenere altri 3 tentativi non serve nemmeno chiudere il browser ( basta cancellarli ).

    Ultima possibilità è quella di salvarsi in una tabella del db l'indirizzo ip dell'utente ed il numero di tentativi andati a vuoto.....questo pero mette in crisi chi ha più di un pc collegato ad internet tramite la rete, in quanto tutti i pc hanno lo stesso ip su internet.

    Spero di essere stato di aiuto.

    Ciao

  3. #3
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    grazie, conosci qualche script già pronto da utilizzare per caso?
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  4. #4
    No, non so se ce ne sono di gia pronti....ma non è difficile realizzarlo ( soprattutto il primo metodo ).

    ciao

  5. #5
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Nel primo metodo che hai indicato è questa la sessione da incrementare?
    codice:
    session("login") = True
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  6. #6
    beh...puoi scrivere anche così, ma al posto di true metti un numero. Lo inizializzi a 1 e lo aumenti ogni volta che l'autenticazione non va a buon fine. Quando vedi che session("login") = 3 fai un redirect ad un'altra pagina in cui scrivi il motivo per cui non può più cercare di fare il login.

    ciao

  7. #7
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    .

  8. #8
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Originariamente inviato da Tote
    beh...puoi scrivere anche così, ma al posto di true metti un numero. Lo inizializzi a 1 e lo aumenti ogni volta che l'autenticazione non va a buon fine. Quando vedi che session("login") = 3 fai un redirect ad un'altra pagina in cui scrivi il motivo per cui non può più cercare di fare il login.

    ciao
    non mi è chiaro il meccanismo.... questo è il mio attuale codice:
    codice:
    login = Request.Form("login")
    	password = Request.Form("password")
    	
    	strsql = "Select * FROM tbl_login "
    	strsql = strsql & "WHERE login1 ='" & login & "' AND password1 = '" & password & "'"
    	
    	
    	Set objConn = Server.CreateObject("ADODB.Connection")
    	objConn.Open strConn
    	set objRs = objConn.Execute(strsql)
    	
    	If objRs.EOF then
    		'Non e' valido, mandalo indietro
    		response.redirect "login.asp"
    	Else
    		
    		'e' valido, fallo entrare
    		
    		session("login") = True
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    ....
    If objRs.EOF then
      'Non e' valido, mandalo indietro
       if IsNull(session("tentativo")) then
         session("tentativo") = 1
       else
         session("tentativo") = session("tentativo") + 1
       end if
       response.redirect "login.asp"
    Else
    ....
    Prima di fargli inserire i codice devi però controllare che i tentaivi siano inferiori a quelli che hai stabilito.
    Cioè se è già arrivato a tre, ad esempio, non devi dargli la possibilità di inserire user e password.

    Roby

  10. #10

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.