package auth; import java.util.Hashtable; import java.util.logging.Level; import java.util.logging.Logger; import javax.naming.Context; import javax.naming.NamingException; import javax.naming.directory.DirContext; import javax.naming.directory.InitialDirContext; import javax.swing.JOptionPane; public class Ldap { public boolean LdapAuth(String user, String pass) { String base = "ou=hrz,o=fho"; String dn = "cn="+user + "," + base; String ldapURL = "ldaps://fs3.rz.hs-offenburg.de"; boolean userok=false; Hashtable environment = new Hashtable(); environment.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); environment.put(Context.PROVIDER_URL, ldapURL); environment.put(Context.SECURITY_AUTHENTICATION, "simple"); environment.put(Context.SECURITY_PRINCIPAL, dn); environment.put(Context.SECURITY_CREDENTIALS, pass); try { @SuppressWarnings("unused") DirContext authContext = new InitialDirContext(environment); // user is authenticated userok=true; } catch (NamingException ex) { userok=false; //user hat keine Zugriffsrechte JOptionPane.showMessageDialog(null, ex.toString(), "Message", JOptionPane.INFORMATION_MESSAGE); Logger.getLogger(Ldap.class.getName()).log(Level.SEVERE, null, ex); } return userok; } }