Solved

How to integret JAVA for LDAP autentication?

Posted on 2008-06-22
6
393 Views
Last Modified: 2010-05-18
We are having one internal application developed on JAVA. Now we want to Integrate autentication with existing windows 2003 Active directory. Is it possible to have ldap configured for authentication?
0
Comment
Question by:ktwoisg
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
6 Comments
 

Expert Comment

by:rameshsukka
ID: 21840135
We have open source LDAP API avaiable in market. You can use these API as Action Directory is V3 protocol. For more clarity,

Programatically you need to Bind to LDAP server with proper credentials. Let me know if you required any help on this.

Regards,
Ramesh Sukka.
0
 
LVL 4

Accepted Solution

by:
Meritor earned 125 total points
ID: 21841006
If you just need authentication from LDAP, there is a simpler way to it.
Just use JNDI. if you are able to create context then the user is authenticated, otherwise not
	Hashtable env = new Hashtable();
	env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
	env.put(Context.PROVIDER_URL, "ldap://ap.abc.com:389");//LDAP server location
	env.put(Context.SECURITY_AUTHENTICATION,"simple");
	env.put(Context.SECURITY_PRINCIPAL,"userName"); // specify the username
	env.put(Context.SECURITY_CREDENTIALS,"password"); // specify the password
	DirContext ctx = new InitialDirContext(env);
 
	System.out.println("CTX:"+ctx);

Open in new window

0
 

Author Comment

by:ktwoisg
ID: 21844061
Please let me know how to Bind to LDAP server with proper credentials.
0
 

Expert Comment

by:rameshsukka
ID: 21844389

look at the sample code from
http://java.sun.com/products/jndi/tutorial/ldap/security/ldap.html

// Set up the environment for creating the initial context
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
    "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "ldap://localhost:389/o=JNDITutorial");

// Authenticate as S. User and password "mysecret"
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, "cn=S. User, ou=NewHires, o=JNDITutorial");
env.put(Context.SECURITY_CREDENTIALS, "mysecret");

// Create the initial context
DirContext ctx = new InitialDirContext(env);

// ... do something useful with ctx


In above code,
S. user and password is "mysecret". After initializing content call ctx.bind() function

Regards,
Ramesh Sukka,
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
This article explains the steps required to use the default Photos screensaver to display branding/corporate images
This tutorial will walk an individual through the steps necessary to join and promote the first Windows Server 2012 domain controller into an Active Directory environment running on Windows Server 2008. Determine the location of the FSMO roles by lo…
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question