Applications such a Google’s Chrome and IE can transparently handle Kerberos authentication; however I can not find a “simple” Java solution to match this transparency. All of the solutions I have found require the presence of a krb5.conf file and a login.conf file which nether of the above apps seem to require.
What is the best way to build a Java application with Kerberos SSO capabilities that just work?
[update]: to be clear I need a CLIENT side solution for creating tickets not validating them. Also, it seems that SPNEGO is the default “wrapper” protocol that will eventually delegate to Kerberos but I need to be able to handle the SPNEGO protocol as well.
Oracle has an example using Java’s SaslClient. I’m not a Java programmer, but when I pointed this out once to someone who is, they were able to make it work pretty quickly. It may still require a “conf” file somewhere (n.b. Kerberos uses environment variables, often starting with KRB5_, to know where to look for such files). Also note that Kerberos itself does not include a transport of any kind–your app needs to know how to send and receive the Kerberos payloads the way the server expects (and this is different depending on the server you are trying to authenticate with).
Edit: you edited your question, so here’s a link related to SPNEGO in Java which might be of some use:
http://download.oracle.com/javase/6/docs/technotes/guides/security/jgss/lab/part5.html