2010-09-07 5 views
1

Pour une raison quelconque, je ne peux pas authentifier les informations d'identification de l'utilisateur à l'aide de LDS pour les utilisateurs créés dans LDS.Les services d'annuaire légers AD n'authentifient pas les utilisateurs

Mon code de test est:

 PrincipalContext context = new PrincipalContext(ContextType.ApplicationDirectory, "adlds:50000", "CN=test,DC=test,DC=internal", ContextOptions.Negotiate); 

     UserPrincipal user = new UserPrincipal(context); 

     user.Enabled = true; 
     user.Name = "MyTestUser"; 
     user.SetPassword("[email protected]"); 
     user.GivenName = "ATestUser123"; 
     user.Surname = "SurnameOf"; 

     user.Save(); 

     bool auth = context.ValidateCredentials("MyTestUser", "[email protected]"); 

ValidateCredentials est de retour faux à chaque fois. LDS est en cours d'exécution sur Server 2008 R2 dont le domaine est joint.

J'ai essayé de recréer le contexte, d'expirer des mots de passe, de réinitialiser manuellement les mots de passe via ADSI, etc.

Des pensées?

Répondre

4

J'ai rencontré le même problème. Ce que je faisais, et travaille pour moi, est lors de l'appel ValidateCredentials j'ai modifié le nom d'utilisateur un peu:

bool auth = context.ValidateCredentials(
          String.Format("CN={0},CN=test,DC=test,DC=internal", 
              "MyTestUser"), 
          "[email protected]"); 

Hope this helps.

Questions connexes