OVH Cloud OVH Cloud

Probleme de sécurité

2 réponses
Avatar
Francois Soucy
Bonjour a tous.

J'ai un petit problème de redirection après avoir authentifié un
utilisateur. Le serveur me renvoie perpétuellement à la page de login!

URL DEMANDÉ:
http://localhost/Journal/Admin/Login.aspx?ReturnUrl=%2fJournal%2fAdmin%2fAdmin.aspx
Structure du site: wwwroot/journal/ ' page courante accessible a tous
wwwroot/journal/admin/ ' pages non accessible pour
les utilisateur NON authentifié

WebConfig: <authentication mode="Forms">
<forms loginUrl="Admin/Login.aspx" path="/">
</forms>
</authentication>
</system.web>
<location path="Admin/Admin.aspx">
<system.web>
<authorization>
<deny users ="*" />
</authorization>

Boutton sur la page de login:
Private Sub BtnLoggin_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BtnLoggin.Click
If Journal.AuthenticateUser(Me.TxtNom.Text, Me.txtPwd.Text) Then
FormsAuthentication.RedirectFromLoginPage(Me.TxtNom.Text, True)
End If
End Sub

Fonction Authenticateuser:
Dim cn As New OleDb.OleDbConnection(Constante.connString)
cn.Open()
Dim cmd As New OleDb.OleDbCommand("Select * from Users WHERE Nom=?", cn)
cmd.Parameters.Add("Nom", Nom)
Dim dr As OleDb.OleDbDataReader =
cmd.ExecuteReader(CommandBehavior.SingleRow)

If dr.Read AndAlso dr("Mdp") = Password Then
AuthenticateUser = True
Else
AuthenticateUser = False
End If
dr.Close()
cn.Close()


La fonction me retourne bien un True lorsque c'est bon et false lorsque
c'est mauvais.. Mais je ne sais pas pourquoi redirectFromLogin me renvoit
pas à la page Admin.aspx comme c'est demandé dans le Url. Il me retourne en
fait toujours à la page Login.aspx. Pourquoi?

Merci
Francoi

2 réponses

Avatar
VANNESTE Xavier
c pas <deny users="*"/> mais <deny users="?"/> qu'il faut mettre
"Francois Soucy" a écrit dans le message de
news:
Bonjour a tous.

J'ai un petit problème de redirection après avoir authentifié


un
utilisateur. Le serveur me renvoie perpétuellement à la page de login!

URL DEMANDÉ:



http://localhost/Journal/Admin/Login.aspx?ReturnUrl=%2fJournal%2fAdmin%2fAdmin.aspx
Structure du site: wwwroot/journal/ ' page courante accessible a tous
wwwroot/journal/admin/ ' pages non accessible


pour
les utilisateur NON authentifié

WebConfig: <authentication mode="Forms">
<forms loginUrl="Admin/Login.aspx" path="/">
</forms>
</authentication>
</system.web>
<location path="Admin/Admin.aspx">
<system.web>
<authorization>
<deny users ="*" />
</authorization>

Boutton sur la page de login:
Private Sub BtnLoggin_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BtnLoggin.Click
If Journal.AuthenticateUser(Me.TxtNom.Text, Me.txtPwd.Text) Then
FormsAuthentication.RedirectFromLoginPage(Me.TxtNom.Text, True)
End If
End Sub

Fonction Authenticateuser:
Dim cn As New OleDb.OleDbConnection(Constante.connString)
cn.Open()
Dim cmd As New OleDb.OleDbCommand("Select * from Users WHERE Nom=?", cn)
cmd.Parameters.Add("Nom", Nom)
Dim dr As OleDb.OleDbDataReader > cmd.ExecuteReader(CommandBehavior.SingleRow)

If dr.Read AndAlso dr("Mdp") = Password Then
AuthenticateUser = True
Else
AuthenticateUser = False
End If
dr.Close()
cn.Close()


La fonction me retourne bien un True lorsque c'est bon et false lorsque
c'est mauvais.. Mais je ne sais pas pourquoi redirectFromLogin me renvoit
pas à la page Admin.aspx comme c'est demandé dans le Url. Il me retourne


en
fait toujours à la page Login.aspx. Pourquoi?

Merci
Francoi




Avatar
Francois Soucy
En effet ca fonctionne très bien maintenant... J'avais essayé cette solution
juste avant d'écrire ma question, mais probablement qu'un cookie persistant
était logé sur mon ordi et me fesait passé outre le login.aspx. Je croyais
alors que je fesait fausse route! Merci du coup de main.

Francois

"VANNESTE Xavier" wrote in message
news:
c pas <deny users="*"/> mais <deny users="?"/> qu'il faut mettre
"Francois Soucy" a écrit dans le message de
news:
> Bonjour a tous.
>
> J'ai un petit problème de redirection après avoir


authentifié
un
> utilisateur. Le serveur me renvoie perpétuellement à la page de login!
>
> URL DEMANDÉ:
>



http://localhost/Journal/Admin/Login.aspx?ReturnUrl=%2fJournal%2fAdmin%2fAdmin.aspx
> Structure du site: wwwroot/journal/ ' page courante accessible a tous
> wwwroot/journal/admin/ ' pages non accessible
pour
> les utilisateur NON authentifié
>
> WebConfig: <authentication mode="Forms">
> <forms loginUrl="Admin/Login.aspx" path="/">
> </forms>
> </authentication>
> </system.web>
> <location path="Admin/Admin.aspx">
> <system.web>
> <authorization>
> <deny users ="*" />
> </authorization>
>
> Boutton sur la page de login:
> Private Sub BtnLoggin_Click(ByVal sender As System.Object, ByVal e As
> System.EventArgs) Handles BtnLoggin.Click
> If Journal.AuthenticateUser(Me.TxtNom.Text, Me.txtPwd.Text) Then
> FormsAuthentication.RedirectFromLoginPage(Me.TxtNom.Text, True)
> End If
> End Sub
>
> Fonction Authenticateuser:
> Dim cn As New OleDb.OleDbConnection(Constante.connString)
> cn.Open()
> Dim cmd As New OleDb.OleDbCommand("Select * from Users WHERE Nom=?",


cn)
> cmd.Parameters.Add("Nom", Nom)
> Dim dr As OleDb.OleDbDataReader > > cmd.ExecuteReader(CommandBehavior.SingleRow)
>
> If dr.Read AndAlso dr("Mdp") = Password Then
> AuthenticateUser = True
> Else
> AuthenticateUser = False
> End If
> dr.Close()
> cn.Close()
>
>
> La fonction me retourne bien un True lorsque c'est bon et false lorsque
> c'est mauvais.. Mais je ne sais pas pourquoi redirectFromLogin me


renvoit
> pas à la page Admin.aspx comme c'est demandé dans le Url. Il me retourne
en
> fait toujours à la page Login.aspx. Pourquoi?
>
> Merci
> Francoi
>
>