Java-Creation user dans un active Directory

reuqnas - 2 mai 2013 à 14:56
 reuqnas - 6 mai 2013 à 11:44
Bonjour, je débute concernant l'active directory, je dois dans un premier temps me conencter à un active directory test, pour l'instant çà c'est bon, par contre je dois maintenant créer un user dans cet active directory test mais un message d'erreur apparait tout le temp, mon code est le suivant :

public class Create_User {
public void Create(String classFourni, String urlAD, String typeSecu, String userDN, String mdp, DirContext dc){
Hashtable<String,String> env = new Hashtable<String,String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, classFourni);
env.put(Context.PROVIDER_URL, urlAD);
env.put(Context.SECURITY_AUTHENTICATION, typeSecu);
env.put(Context.SECURITY_PRINCIPAL, userDN);
env.put(Context.SECURITY_CREDENTIALS, mdp);

try {

// Create the initial directory context
dc = new InitialDirContext(env);
DirContext dCtx = (DirContext)dc;

System.out.println("");

// entry's DN
String entryDN = "uid=user1,ou=Utilisateurs";

// entry's attributes
Attribute cn = new BasicAttribute("cn", "user2");
Attribute displayName = new BasicAttribute("displayName", "user2");
Attribute givenName = new BasicAttribute("givenName", "user2");
Attribute sAMAccountType = new BasicAttribute("sAMAccountType", "154785412");
Attribute primaryGroupID = new BasicAttribute("primaryGroupID", "124");
Attribute mail = new BasicAttribute("mail", "newuser@foo.com");
Attribute phone = new BasicAttribute("telephoneNumber", "+1 222 3334444");
Attribute oc = new BasicAttribute("objectClass");
oc.add("top");
oc.add("person");
oc.add("organizationalPerson");
oc.add("inetOrgPerson");


dc = new InitialDirContext(env);

// build the entry
BasicAttributes entry = new BasicAttributes();
entry.put(cn);
entry.put(mail);
entry.put(phone);
entry.put(displayName);
entry.put(givenName);
entry.put(sAMAccountType);
entry.put(primaryGroupID);
entry.put(oc);

// Add the entry
dc.createSubcontext(entryDN, entry);
dc.close();
} catch (NamingException ne) {
System.out.println("Erreur lors de l'acces au serveur LDAP \n" + "Informations :" + ne);
ne.printStackTrace();
}
}
}

5 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
2 mai 2013 à 15:49
Salut,

Je déplace vers le forum java
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
2 mai 2013 à 15:51
Et c'est quoi le message d'erreur ?
0
le suivant : javax.naming.NamingException: [LDAP: error code 1 - 000020D6: SvcErr: DSID-031007DB, problem 5012 (DIR_ERROR), data 0
0
je viens d'essayer cela mais pareil une autre erreur se produit :

public class Create_User {
public void Create(String classFourni, String urlAD, String typeSecu, String userDN, String mdp, DirContext dc){
Hashtable<String,String> env = new Hashtable<String,String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, classFourni);
env.put(Context.PROVIDER_URL, urlAD);
env.put(Context.SECURITY_AUTHENTICATION, typeSecu);
env.put(Context.SECURITY_PRINCIPAL, userDN);
env.put(Context.SECURITY_CREDENTIALS, mdp);

try {

// Create the initial directory context
dc = new InitialDirContext(env);
String username ="programmeur2";
String distinguishedName = " ou=Utilisateurs, dc=recb1, dc=org";
Attributes newAttributes = new BasicAttributes(true);
Attribute crn = new BasicAttribute("objectclass" );
crn.add("top" );
crn.add("organizationalUnit" );
crn.add("ou" );
//crn.add("demo" );
newAttributes.put(crn);

newAttributes.put(new BasicAttribute("cn", username));
dc.createSubcontext(distinguishedName, newAttributes);
}
catch (Exception e) {
System.out.println("create error: " + e);
e.printStackTrace();
System.exit(-1);
}
}
}


Erreur : javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - 000020B3: UpdErr: DSID-03051169, problem 6002 (OBJ_CLASS_VIOLATION), data 0
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bonjour,

j'ai modifier quelques trucs mais çà me renvoi maintenant cette erreur :

:javax.naming.NoPermissionException: [LDAP: error code 50 - 00000005: SecErr: DSID-031521D0, problem 4003 (INSUFF_ACCESS_RIGHTS), data 0

Si quelqu'un à deja eu ce probleme merci de bien vouloir m'aider
0
Rejoignez-nous
A voir également