Unlock d'utilisateur dans Active Directory

GPare Messages postés 6 Date d'inscription vendredi 22 novembre 2002 Statut Membre Dernière intervention 6 février 2007 - 5 oct. 2004 à 11:14
GPare Messages postés 6 Date d'inscription vendredi 22 novembre 2002 Statut Membre Dernière intervention 6 février 2007 - 5 oct. 2004 à 13:55
Bonjour à tous,

J'aimerais pouvoir delocker des utilisateurs dans AD à partir d'une page ASPx.

Voici le code implementer :

long currentValue = ADS_UF_NORMAL_ACCOUNT;

if(OUser.Properties.Contains("userAccountControl"))
{
currentValue = Convert.ToInt64(OUser.Properties["userAccountControl"].Value);
}
currentValue |= ADS_UF_NORMAL_ACCOUNT ;
currentValue &= ~ADS_UF_LOCKOUT;
OUser.Properties["userAccountControl"].Value = currentValue;
OUser.CommitChanges();
OUser.Close();

OUser est de type DirectoryEntry.
et les constantes sont :

ADS_UF_NORMAL_ACCOUNT = 0x0200
ADS_UF_LOCKOUT = 0x0010

J'ai un message d'erreur lors de l'execution du code à la ligne :
OUser.Properties["userAccountControl"].Value = currentValue;

Quelqu'un pourrait-il m'aider?

Merci d'avance

Gaetan is there, the show must go on

2 réponses

cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
5 oct. 2004 à 13:28
Quel est le message d'erreur ?

Ne serait ce pas un probleme de permission?
Dans ce cas, voit le parametre d' "Impersonnate" dans le Web config (Dans le cas d'un intranet)

A++

:-p Crazyht :)
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
0
GPare Messages postés 6 Date d'inscription vendredi 22 novembre 2002 Statut Membre Dernière intervention 6 février 2007
5 oct. 2004 à 13:55
J'ai déjà essayé en mettant le paramètre impersonate à true mais rien ne change.
De plus je ne pense pas que ça intervient dans mon cas car je demande dans mon form le user qui va s"identifier à AD pour faire la modif.

Voici le message d'erreur :

System.Runtime.InteropServices.COMException (0x80004005): Erreur non spécifiée at System.DirectoryServices.Interop.IAds.PutEx(Int32 lnControlCode, String bstrName, Object vProp) at System.DirectoryServices.PropertyValueCollection.OnInsertComplete(Int32 index, Object value) at System.Collections.CollectionBase.System.Collections.IList.Add(Object value) at System.DirectoryServices.PropertyValueCollection.Add(Object value) at System.DirectoryServices.PropertyValueCollection.set_Value(Object value) at admanagement.ADWebForm.UnlockUser() in c:\inetpub\wwwroot\admanagement\default.aspx.cs:line 360

Gaetan is there, the show must go on
0
Rejoignez-nous