Solved

Kerberos Authentication and Websphere

Posted on 2013-02-05
1
842 Views
Last Modified: 2013-04-28
I am trying to implement a web service on WAS 7.0 that uses JNDI to communicate with an Active Directory running Windows Server 2008 R2.

Before I begin, I'd like to mention that I have not much knowledge in Kerberos authentication but have read up on the mechanism.

I have successfully implemented and tested a change password function using a web service call from a client to the AD through WAS.
System.setProperty("javax.net.ssl.trustStore", keystore);
env.setProperty(Context.SECURITY_AUTHENTICATION, "Simple");
env.setProperty(Context.SECURITY_PROTOCOL, "ssl");
env.setProperty(Context.SECURITY_PRINCIPAL, principal);
env.setProperty(Context.SECURITY_CREDENTIALS, credentials);
env.setProperty(Context.PROVIDER_URL, providerUrl);
InitialLdapContext ctx = new InitialLdapContext(env, null);

// Call change password function using ctx

Open in new window

I understand that to implement Kerberos authentication in JNDI, the code below should be used instead.
env.setProperty(Context.SECURITY_AUTHENTICATION, "GSSAPI");

Open in new window

I have also successfully implemented Kerberos authentication without WAS (no web services) by using the kinit command on the client to retrieve the cache and then running the modified code on the console. This can't be the right way to proceed as I cannot expect the client to open the command prompt to key kinit every time he uses the system.
LoginContext lc = new LoginContext("krb5.conf");
lc.login();

Open in new window

I have executed the above code and managed to get a successfully authentication. The krb5.conf, keytab and keystore are stored locally on the client for this testing purpose. I understand that these are supposed to be configured within WAS.

The problem arises when I am trying to integrate WAS with the code I have. I'm not too familiar with the settings within WAS and assuming the settings within have been set up correctly (by someone else), what should I do to within my code to perform the task at hand? I should not be utilizing files such as the keytab directly.

What I have at the moment is very similar to this Link and I believe that WAS should be handling most of it for me, but I am not sure how.

Thanks in advance.
0
Comment
Question by:pcssecure
1 Comment
 
LVL 21

Accepted Solution

by:
RK earned 500 total points
ID: 38858164
Hi,

I have seen enabling kerberos authentication in IIS but not WAS. I believe that the configuration will be similar. Please check this article and see it makes any shades http://support.microsoft.com/kb/326089

http://www.ibm.com/developerworks/websphere/library/techarticles/0910_jain1/0910_jain1.html
0

Featured Post

The Eight Noble Truths of Backup and Recovery

How can IT departments tackle the challenges of a Big Data world? This white paper provides a roadmap to success and helps companies ensure that all their data is safe and secure, no matter if it resides on-premise with physical or virtual machines or in the cloud.

Question has a verified solution.

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

Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
ADCs have gained traction within the last decade, largely due to increased demand for legacy load balancing appliances to handle more advanced application delivery requirements and improve application performance.
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

831 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