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

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Créer compte AD en Perl

n°51134
Bagghera
Posté le 20-03-2009 à 11:45:30  profilanswer
 

Bonjour,
Pour des besoins d'une synchronisation entre Openldap et Active Directory j'aimerai pouvoir ajouter des comptes dans l'AD via un script en perl et ça ne marche pas. J'ai l'erreur  
 
0000209A: SvcErr: DSID-031A0D6F, problem 5003 (WILL_NOT_PERFORM), data 0
 at ajout_user.pl line 26, <DATA> line 362.
 
J'utilise la commande suivante :
 
   $mesg = $ldap->add( $var2,
        attr => [
         objectClass       => [qw( top person organizationalPerson user )] ,
         cn                => 'essai' ,
         description       => 'Nouveau' ,
         givenName         => 'essai' ,
         distinguishedName => $var2 ,
         instanceType      => '4' ,
         whenCreated       => '20051102152514.0Z' ,
         whenChanged       => '20090320095241.0Z' ,
         displayName       => 'essai' ,
         uSNCreated        => '12530' ,
         uSNChanged        => '4796418' ,
         name              => 'essai' ,
         objectGUID        => 'Ng/RqiV6DEGWkBomdkJJnw==' ,
         userAccountControl => '66048' ,
         codepage          => '0' ,
         countryCode       => '0' ,
         lastLogon         => '0' ,
         pwdLastSet        => '0' ,
         accountExpires    => '9223372036854775807' ,
         primaryGroupID    => '513',
         objectSid         => 'AQUAAAAAAAUVAAAAgARYWSGlk5nXUlvr3gUAAA==' ,
         sAMAccountName    => 'essai',
         sAMAccountType    => '805306368' ,
         userPrincipalName => 'essai@toto.fr',
         objectCategory    => 'CN=Person,CN=Schema,CN=Configuration,DC=toto,DC=fr' ,
         mail              => 'essai@toto.fr' ,
         unicodePwd        => Encode::encode('UTF-16LE',qq("$var3" ))]
 
A priori je dois bien me connecter car dans la même partie de mon script j'arrive a modifier des élèments déjà créer via :
 
   $ldap->modify($var2, changes => [
        replace  => [ description => 'toto'],
        ]);
 
 
$var2 étant le dn de mon compte
$var3 le mot de passe.
 
 
J'ai essayé avec un ldapadd :
ldapadd -H ldaps://toto.fr -D cn=admin,DC=toto,DC=fr -W  -f /home/essai.ldif -x
 
Et j'ai le même message d'erreur.
 
Merci pour votre aide...
 
 
Edit : attribut MemberOf enlevé.


Message édité par Bagghera le 20-03-2009 à 15:20:40
mood
Publicité
Posté le 20-03-2009 à 11:45:30  profilanswer
 

n°51141
Je@nb
Modérateur
Kindly give dime
Posté le 20-03-2009 à 13:58:59  profilanswer
 

tu fais au feeling les sid and co ?

n°51150
Bagghera
Posté le 20-03-2009 à 15:24:30  profilanswer
 

Je me suis basé sur un utilisateur test que je viens de créer via la mmc "Utilisateur et ordinateurs AD".
 
J'ai fait un ldapsearch sur mon AD depuis mon serveur Openldap pour regarder les attributs qui avaient été mis.
Le problème vient peut être des attributs contenant des caractères spéciaux qui windows encode.
 
Par exemple dans mon ldapsearch j'ai :
objectGUID:: V3etn3HrBkec5+Og4J/hiA==
 
Comment dois-je le mettre dans mon script ?
Merci

n°51151
Bagghera
Posté le 20-03-2009 à 15:25:48  profilanswer
 

Autre question est-ce que je dois mettre uSNCreated et uSNChanged ?
J'ai pas trouvé la liste des attributs obligatoires...

n°51152
Je@nb
Modérateur
Kindly give dime
Posté le 20-03-2009 à 15:37:48  profilanswer
 

Typiquement ces attributs "spéciaux" ne doivent pas être entrés à la main. Ils sont généré automatiquement. Ca n'a aucun sens (si tu essaie de comprendre à quoi ils servent) de vouloir les rentrer à la main.
 
uSNCreated et uSNChanged correspondent aux compteur (interne de l'AD utilisé lors des réplications) de la création et de la modification de l'objet).

n°51155
Bagghera
Posté le 20-03-2009 à 16:39:13  profilanswer
 

Je les ai enlevé ainsi whenCreated et whenChanged et c'est pas mieux.

n°51156
El Pollo D​iablo
REACHED THE END OF CAKE
Posté le 20-03-2009 à 16:46:47  profilanswer
 

Fait pas ça directement en LDAP c'est pas aussi simple que ça, utilise ADSI c'est fait pour.


Message édité par El Pollo Diablo le 20-03-2009 à 16:49:06
n°51160
Bagghera
Posté le 20-03-2009 à 16:55:42  profilanswer
 

C'est ce que je vois :D Par  contre ADSI sur Linux je vois pas comment je vais faire.
A priori certain le font en php donc ça doit être le même fonctionnement ?

n°51224
Bagghera
Posté le 23-03-2009 à 12:07:16  profilanswer
 

Le WE étant passé j'espérais avoir une lumière ou une aide bien sentit mais rien....
 
ADSI ça pas l'air simple....


Aller à :
Ajouter une réponse
 

Sujets relatifs
Ajout d'un attribut personnalisé aux comptes AD à partir d'une liste.Impossible de lancer et de désinstaller Ad-aware.
Dupliquer un group ADcréer son serveur
Gérer des Mac sur un réseau Windows/ADCompte Administrateur sans mot de passe
[AD 2003] Administration des délégationsWindows 2008 : NFS et authentification AD
restreindre un poste à 1 session sous AD ?CISCO & script perl & script php interface web
Plus de sujets relatifs à : Créer compte AD en Perl


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