Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. import javax.naming.NamingEnumeration;
  2. import javax.naming.directory.SearchControls;
  3. import javax.naming.directory.SearchResult;
  4. import javax.naming.ldap.InitialLdapContext;
  5. import java.util.Hashtable;
  6.  
  7. public class LDAPLogin {
  8.  
  9. public static void main(String[] args) throws Exception {
  10. if (args.length < 2) {
  11. throw new RuntimeException("No access without username and password for you!");
  12. }
  13.  
  14. String username = args[0];
  15. String password = args[1];
  16.  
  17. String query = String.format("(&(uid=%s)(userPassword=%s))", username, password);
  18. System.out.println("LDAP query: " + query);
  19.  
  20. Hashtable<String, Object> env = new Hashtable<>();
  21. env.put("java.naming.provider.url", "ldap://localhost:8080/dc=example,dc=org");
  22. env.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
  23. InitialLdapContext ctx = new InitialLdapContext(env, null);
  24.  
  25. SearchControls constraints = new SearchControls();
  26. constraints.setSearchScope(SearchControls.SUBTREE_SCOPE);
  27. constraints.setReturningAttributes(new String[0]); //return no attrs
  28.  
  29. NamingEnumeration<SearchResult> results = ctx.search("", query, constraints);
  30. try {
  31. if (results.hasMore()) {
  32. System.out.println("Access granted");
  33. } else {
  34. System.out.println("Access denied");
  35. }
  36. } finally {
  37. results.close();
  38. }
  39. }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement