Salut,
J'essaye de mettre en place une authentification LDAP sécurisée à partir d'un serveur Oracle 9i (en pl/sql). J'utilise le package DBMS_LDAP pour se connecter au serveur LDAP via SSL.
Voici mon code PL/SQL avec les modifications apportées à un code existant (qui fonctionne mais sans ssl) afin de passer en mode sécurisé :
____________________________________________
____________________________________________FUNCTION loginLDAP (ldap_user IN VARCHAR2,
ldap_pwd IN VARCHAR2)
RETURN PLS_INTEGER
IS
ldap_retval PLS_INTEGER := -1;
ldap_session DBMS_LDAP.session;
ldap_host VARCHAR2(15) := <ldap server>;
--ldap_port VARCHAR2(5) := DBMS_LDAP.PORT;
ldap_port VARCHAR2(5) := DBMS_LDAP.SSL_PORT;
BEGIN
-- Choosing exceptions to be raised by DBMS_LDAP library.
DBMS_LDAP.USE_EXCEPTION := TRUE;
-- Initialize ldap library and get session handle.
ldap_session := DBMS_LDAP.init(ldap_host,ldap_port);
-- Make all sessions SSL
ldap_retval := DBMS_LDAP.open_ssl(ldap_session, '', '', 1);
-- Simple bind to server
ldap_retval := DBMS_LDAP.simple_bind_s(ldap_session, ldap_user, ldap_pwd);
return ldap_retval;
-- Handle Exceptions
EXCEPTION
WHEN OTHERS THEN
-- Unbind from ldap directory
ldap_retval := DBMS_LDAP.unbind_s(ldap_session);
return -1;
END;
Le problème est que ça ne marche pas...
Voici les types d'erreurs que j'ai :
[Wed Jun 21 09:49:19 2006] [warn] mod_plsql: Stale Connection due to Oracle error 3113
[Wed Jun 21 09:49:19 2006] [error] mod_plsql: /pls/login_ldap.loginldap ORA-3113
ORA-03113: end-of-file on communication channel
[Wed Jun 21 09:49:19 2006] [warn] mod_plsql: /pls/login_ldap.loginldap HTTP-404 Custom Authentication Failure.
[owa_custom.authorize] oerr = 3113
ORA-03113: end-of-file on communication channel
Quelqu'un Peut-il me donner un coup de main ou m'orienter vers une solution...
Merci.
Partager