Bonjour à tous,

Il y a quelques articles remontés par Google seulement (je suis désolé), je n'arrive pas à comprendre comment faire ce que je souhaite faire.

Dans un premier temps, j'arrive à établir une connexion LDAP à notre ActiveDirectory :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
SET SERVEROUTPUT ON SIZE 1000000
DECLARE
  -- Adjust as necessary.
  l_ldap_host    VARCHAR2(256) := 'DC02';
  l_ldap_port    VARCHAR2(256) := '389';
  l_ldap_user    VARCHAR2(256) := 'cn=ldap_user,OU=People-MKT,DC=intra-hospital,DC=fr';
  l_ldap_passwd  VARCHAR2(256) := 'Hjui8-(L;9;';
  l_retval       PLS_INTEGER; 
  l_session      DBMS_LDAP.session;
  l_attrs        DBMS_LDAP.string_collection;
 
 
BEGIN
  -- Choose to raise exceptions.
  DBMS_LDAP.USE_EXCEPTION := TRUE;
 
  -- Connect to the LDAP server.
  l_session := DBMS_LDAP.init(hostname => l_ldap_host,
                              portnum  => l_ldap_port);
 
  l_retval := DBMS_LDAP.simple_bind_s(ld     => l_session,
                                      dn     => l_ldap_user,
                                      passwd => l_ldap_passwd);
 
 
  -- Disconnect from the LDAP server.
  l_retval := DBMS_LDAP.unbind_s(ld => l_session);
  DBMS_OUTPUT.PUT_LINE('L_RETVAL: ' || l_retval);
END;
/

Ensuite, je souhaite chercher un utilisateur et récupérer un argument qui se nomme idnoyau.

Je cherche un utilisateur qui se nomme [test_ldap] et son argument [idnoyau]. Il se trouve dans l'arborescence [OU=5678,OU=67,OU=16,OU=People-MKT,DC=intra-hospital,DC=fr].

Puis-je chercher l'utilisateur à partir de la base de mon domaine [OU=People-MKT,DC=intra-hospital,DC=fr] ou faut-il renseigner l'OU [OU=5678,OU=67,OU=16,OU=People-MKT,DC=intra-hospital,DC=fr] ou se trouve l'objet cherché?

Avez-vous des exemples à m'expliquer s'il vous plait?


Merci d'avance pour votre aide,

Bonne journée,
Matt