Bonjour,
je suis débutant sur la programmation ASP.net et suis autodidacte.
J'ai développé un extranet couplé avec une base SQL Server et j'utilise le mode Formulaire pour l'authentification.

je voudrais limiter le nombre de tentatives de connexion à 3.

l'utilisateur tape son login + mdp et si c'est érroné après 3 tentatives je le redirige vers une page de demande de login + mdp.

voici le code utilisé jusqu'à maintenant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 
    Private Sub Btn_Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Connect.Click
        Dim myConnString As String = System.Configuration.ConfigurationSettings.AppSettings("Connectionstring2")
        Dim myConnection As New SqlConnection(myConnString)
        Dim Profil As String
        Dim i As Integer
        Dim mySelectQuery As String
        mySelectQuery = "SELECT dbo.UTILISATEURS.* "
        mySelectQuery = mySelectQuery + " FROM  dbo.UTILISATEURS "
        mySelectQuery = mySelectQuery + " WHERE dbo.UTILISATEURS.NOM='"
        mySelectQuery = mySelectQuery + Trim(T_USER.Text) + "' AND dbo.UTILISATEURS.MDP='" + T_Password.Text + "'"
        mySelectQuery = mySelectQuery + " ORDER BY ID "
        myConnection.Open()
        Dim myCommand As New SqlCommand(mySelectQuery, myConnection)
        Dim myReader As SqlDataReader = myCommand.ExecuteReader()
        Dim x As Integer
        If myReader.Read = False Then
            L_Error.Visible = True
            L_Error.Text = "Erreur de saisie, Il vous reste " & x - 1 & " tentatives"
        Else
            FormsAuthentication.RedirectFromLoginPage(T_USER.Text, False)
            Profil = myReader.GetString(3)
            Session("NOMPER") = myReader.GetString(1)
            Session("PREPER") = myReader.GetString(2)
            Session("UTIL") = myReader.GetString(3) ' variable Profil (PROFIL dans Table UTILISATEURS)
            Session("CLT") = myReader.GetString(4)  ' variable client (NOM_CLT dans Table UTILISATUERS) 
            Session("MDP") = myReader.GetString(5)
            Session("LOGIN") = Me.T_USER.Text
            Select Case Profil
                Case "Nazca" : Response.Redirect("L_GLOBAUX.aspx") 'Session amdinistrateur
                Case "MultipleF" : Response.Redirect("L_TL_NAZCA.aspx") 'Session TL Fabrice
                Case "MultipleG" : Response.Redirect("L_TL_NAZCA.aspx") 'Session TL GAMAL
                    'Case "Client" : Response.Redirect("L_CLIENT.aspx") ' Session Client
                Case "Client" : Response.Redirect("L_INTER.aspx")
                Case Else : Response.Write("Aucun profil détécté, veuillez contacter le support technique")
            End Select
        End If
    End Sub
End Class
Merci de votre aide