Il sito dedicato all'informatica ideato da Iasparra Francesco

Esempio di autenticazione con LDAP

  • Codice di esempio: autenticazione LDAP su protocollo SSL.

  • Data: 25/03/2013 Autore: Iasparra Francesco 

import javax.naming.*;
import javax.naming.directory.*;
import java.util.Hashtable;
 
/**
*   Importare il certificato del server con keytool:
*
*   keytool -importcert -alias mycert -file server_cert.der -keystore truststore.jks -storepass 123456
**/


class UserLDAPSSL {

    public static void main(String[] args) {

	    System.setProperty("javax.net.ssl.trustStore", "truststore.jks");
            System.setProperty("javax.net.ssl.trustStorePassword", "123456");
            System.setProperty("javax.net.ssl.trustStoreType", "JKS");


    	Hashtable authEnv = new Hashtable(11);
    	String passWord = "admin";
    	String dn = "cn=admin,dc=dominio,dc=local";
     	String ldapURL = "ldaps://127.0.0.1:636";
	//String ldapURL = "ldap://10.1.1.2:389";
    	authEnv.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
   		authEnv.put(Context.PROVIDER_URL, ldapURL);
   		authEnv.put(Context.SECURITY_AUTHENTICATION, "simple");
		authEnv.put(Context.SECURITY_PROTOCOL, "ssl");
   		authEnv.put(Context.SECURITY_PRINCIPAL, dn);
   		authEnv.put(Context.SECURITY_CREDENTIALS, passWord);
 
    	try {
    		DirContext authContext = new InitialDirContext(authEnv);
		//System.out.println(authContext.lookup("cn=admin"));
    		System.out.println("Authentication Success!");
    	} catch (AuthenticationException authEx) {
    		System.out.println("Authentication failed!");
 
    	} catch (NamingException namEx) {
    		System.out.println("Something went wrong!");
    		namEx.printStackTrace();
    	}
    }
}

  • Java

  • Php

  • Mysql

  • Apache ant

  • Eclipse

  • Spring

  • Hibernate

  • Netbeans

  • Debian

  • Linux

  • Maven