Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3015 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  ldap & c#

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

ldap & c#

n°776133
schmur
Posté le 24-06-2004 à 15:20:58  profilanswer
 

bonjour.
Je dois travailler avec ldap mais je sais pas trop comment ca marche. Si quelqu'un connais est-ce qu'il pourrait m'espliquer un peu ou me donner de bonne adresse de site.
 
ps: j'arrive à établir une connection mais je capte pas comment la fonction de recherche fonctionne
 
merci d'avance

mood
Publicité
Posté le 24-06-2004 à 15:20:58  profilanswer
 

n°814391
jaylee
Posté le 04-08-2004 à 01:29:34  profilanswer
 

Tu dois utiliser pour cela System.DirectoryServices.
 
Jette un oeil sur cet article :
http://www.codeproject.com/csharp/ADTester.asp
 
--
Jay
{Epitech.}
http://www.labtech.epitech.net/blogs/jaylee

n°814484
schmur
Posté le 04-08-2004 à 09:52:06  profilanswer
 

merci mais depuis le tps j'ai bien avancé.
J'arrive à faire plein de truc. ;-)
 
par contre si quelqu'un sait comment on active un compte je suis preneur.
Je m'esplique, j'arrive avec le code à créer un utilisteur dans l'annuaire. Malheureusement, j'arrive pas à lui activer le compte. C'est un peu con car ca sert à rien d'ajouter des utilisateurs si le compte n'est pas activé
 
si quelqu'un connait....

n°814583
jaylee
Posté le 04-08-2004 à 11:21:36  profilanswer
 

schmur a écrit :

merci mais depuis le tps j'ai bien avancé.
J'arrive à faire plein de truc. ;-)


 
Je me doute :) Mais c'était au cas ou ce soit le contraire...
 

schmur a écrit :

par contre si quelqu'un sait comment on active un compte je suis preneur.
Je m'esplique, j'arrive avec le code à créer un utilisteur dans l'annuaire. Malheureusement, j'arrive pas à lui activer le compte. C'est un peu con car ca sert à rien d'ajouter des utilisateurs si le compte n'est pas activé
 
si quelqu'un connait....


 
tu peux utiliser le code suivant :
 

Code :
  1. // UF_NORMAL_ACCOUNT      0x00200 = true
  2. // UF_DONT_EXPIRE_PASSWD  0x10000 = true
  3. // UF_ACCOUNTDISABLE      0x00002 = false
  4. int userACFlags = (int)newUser.Properties["userAccountControl"].Value;
  5. userACFlags |= 0x200 | 0x10000;
  6. userACFlags &= ~0x2;
  7. newUser.Properties["userAccountControl"].Value = userACFlags;


 
Il faut cependant que tu ai assigné un mot de passe avant, si mes souvenirs sont bons.
 
--  
Jay  
{Epitech.}  
http://www.labtech.epitech.net/blogs/jaylee

n°814626
schmur
Posté le 04-08-2004 à 11:47:34  profilanswer
 

humm, c'est surement le mot de passe alors.
Je vais essaye un peu plus tard
 
 
ps: je sais pas si tu connais mais j'utilise une référence novell pour faire tout ca
 
encore merci

n°815946
pascal34
one point !
Posté le 05-08-2004 à 14:42:53  profilanswer
 

Un petit exemple pour sortir la liste des noms de machines appartenant à un domaine. Ca interroge Active Directory qui est un annuaire LDAP
 
C'est basic mais c'est un début.
 

Code :
  1. public static SearchResultCollection getComputers(string domain)
  2.  {
  3.   DirectoryEntry entry = new DirectoryEntry("LDAP://" + domain);
  4.   DirectorySearcher searcher = new DirectorySearcher(entry);
  5.   searcher.Filter = "(objectClass=computer)";
  6.   searcher.PropertiesToLoad.Add("name" );
  7.   SearchResultCollection searchResults = searcher.FindAll();
  8.   return searchResults;
  9.  }


Message édité par pascal34 le 05-08-2004 à 14:43:34
n°816409
schmur
Posté le 06-08-2004 à 08:46:18  profilanswer
 

jaylee a écrit :

Je me doute :) Mais c'était au cas ou ce soit le contraire...
 
 
 
tu peux utiliser le code suivant :
 

Code :
  1. // UF_NORMAL_ACCOUNT      0x00200 = true
  2. // UF_DONT_EXPIRE_PASSWD  0x10000 = true
  3. // UF_ACCOUNTDISABLE      0x00002 = false
  4. int userACFlags = (int)newUser.Properties["userAccountControl"].Value;
  5. userACFlags |= 0x200 | 0x10000;
  6. userACFlags &= ~0x2;
  7. newUser.Properties["userAccountControl"].Value = userACFlags;


 
Il faut cependant que tu ai assigné un mot de passe avant, si mes souvenirs sont bons.
 
--  
Jay  
{Epitech.}  
http://www.labtech.epitech.net/blogs/jaylee


 
heu c'est comment qu'on assigne un mot de passe ?

n°816410
schmur
Posté le 06-08-2004 à 08:47:20  profilanswer
 

merci pascal mais j'ai touvé un autre moyen

n°816422
pascal34
one point !
Posté le 06-08-2004 à 09:07:54  profilanswer
 

schmur a écrit :

merci pascal mais j'ai touvé un autre moyen


 
Ca m'intéresse

n°816436
schmur
Posté le 06-08-2004 à 09:29:55  profilanswer
 

pascal34 a écrit :

Ca m'intéresse


Citation :


LdapConnection ldapConn= new LdapConnection();
ldapConn.Connect ("AdresseIP ou nommachine",389);
ldapConn.Bind("Pseudo","MotdePasse" );  
string[] filtre=new string[2];
filtre[0]="samaccountname";
filtre[1]="objectclass";
string searchFilter="(&(objectclass=user)(!(comment=*)))";
string searchBase = "dc=support,dc=local";
LdapSearchResults lsc = ldapConn.Search(searchBase,LdapConnection.SCOPE_SUB,searchFilter ,filtre,false);


 
voila apres faut traiter les ldapserachresult c'est pas compliqué. En plus il y a un exemple sur le site de novell.
Accésoirement il faut une référence : Novell.Directory.Ldap
elle est gratuite et tu peux la trouver sur le site de novell
   

mood
Publicité
Posté le 06-08-2004 à 09:29:55  profilanswer
 

n°816442
pascal34
one point !
Posté le 06-08-2004 à 09:38:27  profilanswer
 

C'est toujours bon à savoir.
Merci

n°816463
titione
addicted
Posté le 06-08-2004 à 10:02:07  profilanswer
 

'tain je savais pas que novelle avait fait une api .NET... vu la qualité de leur API java, ça doit bien le faire !
faura que j'essaie ça :)

n°816464
schmur
Posté le 06-08-2004 à 10:04:43  profilanswer
 

titione a écrit :

'tain je savais pas que novelle avait fait une api .NET... vu la qualité de leur API java, ça doit bien le faire !
faura que j'essaie ça :)


 
en effet elle est pas mal. Tu peux faire plein de truc.
Créer des groupes, y metrre des membre pareil pour les ou et les utilisateur. Lister tout ce que tu veux, puis même d'autre truc que je connais pas surement.
Sauf que pour l'instant j'arrive pas a activer le compte d'un utilisateur.....


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  ldap & c#

 

Sujets relatifs
Coder module d'authenfication via LDAP avec IISMySql/PostgreSql LDAP...
[LDAP] classe standard avec plusieurs attributs multi valuésLDAP et base de donnée relationel
[PERL LDAP] Ajout d'un user dans un group[LDAP] Création d'usager Java ou Perl?
Pb ldap-php insertion userpassword[ PHP et LDAP ]Comment lire l'attribut ref d'un referral en php
[Divers] Utilisation d'une architecture LDAP - CommentairesLdap : connexion automatique via apache
Plus de sujets relatifs à : ldap & c#


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR