Bonjour,
J'ai un problème avec ValidateUser de l'Active Directory, je vous explique:
Lorsque j'inscris un bon code utilisateur mais avec un mauvais mot de passe, la fonction ValidateUser me retourne false signifiant que l'information saisie n'est pas bonne ça c'est OK.
Si par la suite, je saisie le même code utilisateur avec le BON mot de passe, l'AD me retourne une exception: "The server is unwilling to process the request" avec le no "0x80072035" et si par la suite je refais un ValidateUser avec les mêmes bonnes information ça passe, mon compte est valide.
Je ne comprends pas pourquoi il me donne le message de "The server is unwilling....." alors qu'après ça passe. Pour règler mon problème je dois faire 2 call à ValidateUser consécutifs pour que la méthode me retourne true!
Quelqu'un aurait une idée de pourquoi j'ai ce message, je ne sauis pas trop "experte" avec l'Active Directory?
Merci
Voici mon code qui est très très simple...:
Try
Dim utilisateur As MembershipUser = _monProvider.GetUser(compte, False)
If IsNothing(utilisateur) Then
MessageBox.Show("L'utilisateur n'existe pas !")
End If
If Not _monProvider.ValidateUser(compte, motPasse) Then
MessageBox.Show("L'utilisateur n'est pas valide !")
Else
MessageBox.Show("L'utilisateur est valide !")
End If
Catch ex As Exception
Dim message As String = "The server is unwilling to process the request"
If ex.Message.ToLower.Contains(message.ToLower) Or ex.Message.Contains("0x80072035") Then
If IsNothing(utilisateur) Then
MessageBox.Show("L'utilisateur n'existe pas !")
End If
If Not _monProvider.ValidateUser(compte, motPasse) Then
MessageBox.Show("L'utilisateur n'est pas valide !")
Else
MessageBox.Show("L'utilisateur est valide !")
End If
End If
End Try