Hi,

I'm hoping for some pointers on getting GSSAPI/Kerberos auth working in my 
JBoss-hosted application.

My challenge is that I'm attempting a very streamlined use of GSSAPI/Kerberos 
which seems to not be covered by most of the JBoss examples and threads out 
there, so I don't have a working code sample to start from.  The single goal is 
to have acceptSecContext() succeed in validating the bytes of a (Kerberos) 
GSSAPI context token that the server has received.

The GSSAPI token is sent (base-64-encoded) in the payload of a SOAP message 
from rich C++ clients running on Mac and Windows - I am not trying to use 
WS-Security, SOAP headers, HTTP headers, Browser-based authentication, no 
direct use JAAS Subjects and Principals, etc.  The bulk of the documentation on 
JBoss and Kerberos (including Negotiate) tends to assume use of one or more 
layers or API's that don't apply here, so it's been tricky trying to tease out 
what configuration instructions might apply to basic GSSAPI functioning and 
what's actually supporting other server-side behaviors.

I've attempted to follow Sun's tutorial on using GSSAPI without JAAS, and 
modifying run.sh I've had a little success at least in verifying the standard 
system properties are set and getting to square 1 with a GSSManager instance.
FWIW, the system properties I'm defining in run.sh are 
java.security.krb5.realm, java.security.krb5.kdc, 
javax.security.auth.useSubjectCredsOnly, and java.security.auth.login.config 
(not sure if the last one really gets used, the environment seems to prefer the 
login module from login-config.xml)

I've also defined an "other" security context in login-config.xml for 
com.sun.security.auth.module.Krb5LoginModule, and enabled security debug 
logging.  The settings here do get dumped in debugging when I try to use 
GSSManager and friends, but I'm getting this exception when I try to create a 
GSSCredential object for the service:

2009-02-25 13:12:54,198 ERROR   [STDERR]        Feb 25, 2009 1:12:54 PM 
com.sun.xml.ws.server.PeptTie setRuntimeException
  | SEVERE: fault.InvalidCredentialsException: Exception from GSSAPI; nested 
exception is: 
  |     GSSException: No valid credentials provided (Mechanism level: Attempt 
to obtain new ACCEPT credentials failed!)
  | javax.xml.ws.soap.SOAPFaultException: fault.InvalidCredentialsException: 
Exception from GSSAPI; nested exception is: 
  |     GSSException: No valid credentials provided (Mechanism level: Attempt 
to obtain new ACCEPT credentials failed!)

The line that's causing this is a simple:

GSSCredentials myCred = manager.createCredential(servicePrincipalName, 
  |      GSSCredential.INDEFINITE_LIFETIME, 
  |      KERBEROS_OID, 
  |      GSSCredential.ACCEPT_ONLY);

Any suggestions?  Are there any great tutorials or examples out there I've 
overlooked which show how to do this type of barebones GSSAPI/Kerberos 
configuration for a JBoss app?

TIA,
Chris


View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4213180#4213180

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4213180
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to