Hello,

I have to admit that with all of the reports of how easy this was to set 
up for all of you, I am surprised that I am having the opposite 
experience: too many files, too many components, too many players 
(kerberos, SSL required between CAS client and CAS server, ldap, java, 
tomcat/jboss, spnego, AD, etc..).

I suppose the biggest frustration is that even with everything set to 
debug, I don't really see any specific errors except for maybe this one:

*    2010-10-05 00:47:46,518 DEBUG 
[org.jasig.cas.support.spnego.web.flow.SpnegoNegociateCredentialsAction] 
- Authorization header not found. Sending WWW-Authenticate header
*
I do have LDAP auth working, but ...

I don't have SPNEGO working. I've tested it with both Firefox and I.E. I 
try connecting to a simple web page set up with mod_auth_cas, which 
redirects to CAS to get a ticket, which I can get with LDAP auth. But 
with SPNEGO, it seems that the windows credentials from my current login 
(yes, same AD) don't get passed to the site and I still get redirected 
to the CAS server, which will then not authenticate me:

*    The credentials you provided are not supported by CAS

*With a tcpdump, I don't see the simple web page ask the cas server to 
validate the ticket being presented to it by the browser - I guess that 
means that it isn't getting any such credentials from the browser, which 
causes it to redirect to the cas login page.

Note that I took out the LDAP auth from deployerConfigContext.xml to 
make sure that only SPNEGO would be used.

I set up everything as the SPNEGO page says to.

I suspect that my problem is with one of the following:

1) <property name="loginConf" value="/WEB-INF/login.conf" />

     Does this have to be more explicit, like a full real path?

2) Kerberos

     The keys that my AD admin generated are:

         HTTP/<fqdn unix hostname>@<AD Domain>

       as opposed to

         HTTP/<fqdn unix hostname>@ <kerberos realm>

     Will this not work?

3) I saw a post in which someone came to the conclusion that the "user 
account can't be used for both SPN and binding the LDAP server"

     The format isn't the same (the kerberos user is a user@<kerberos 
realm>, LDAP auth user is in DN format), but the user they both 
reference is the same one.

     Am I misunderstanding something?

I figure I am getting very close to making this work 
deployerConfigContext.xml is posted below.

Thanks for any help!

Brian

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xmlns:p="http://www.springframework.org/schema/p";
        xmlns:sec="http://www.springframework.org/schema/security";
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/security 
http://www.springframework.org/schema/security/spring-security-3.0.xsd";>

<bean id="authenticationManager"
                 
class="org.jasig.cas.authentication.AuthenticationManagerImpl">
<property name="credentialsToPrincipalResolvers">
<list>
<bean
                                         
class="org.jasig.cas.authentication.principal.UsernamePasswordCredentialsToPrincipalResolver"
 
/>
<bean
                                         
class="org.jasig.cas.support.spnego.authentication.principal.SpnegoCredentialsToPrincipalResolver"
 
/>
<bean
                                         
class="org.jasig.cas.authentication.principal.HttpBasedServiceCredentialsToPrincipalResolver"
 
/>
</list>
</property>
<property name="authenticationHandlers">
<list>
<bean 
class="org.jasig.cas.support.spnego.authentication.handler.support.JCIFSSpnegoAuthenticationHandler">
<property name="authentication">
<bean class="jcifs.spnego.Authentication" />
</property>
<property name="principalWithDomainName" value="false" />
<property name="NTLMallowed" value="true"/>
</bean>
<bean 
class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler">
<property name="httpClient" ref="httpClient" />
</bean>
</list>
</property>
</bean>

<sec:user-service id="userDetailsService">
<sec:user name="battags" password="notused" authorities="ROLE_ADMIN" />
</sec:user-service>

<bean id="attributeRepository"
                 
class="org.jasig.services.persondir.support.StubPersonAttributeDao">
<property name="backingMap">
<map>
<entry key="uid" value="uid" />
<entry key="eduPersonAffiliation" value="eduPersonAffiliation" />
<entry key="groupMembership" value="groupMembership" />
</map>
</property>
</bean>

<bean id="serviceRegistryDao" 
class="org.jasig.cas.services.InMemoryServiceRegistryDaoImpl" />

<bean name="jcifsConfig" 
class="org.jasig.cas.support.spnego.authentication.handler.support.JCIFSConfig">
<property name="jcifsServicePrincipal" value="[email protected]" />
<property name="jcifsServicePassword" value="xxxxx" />
<property name="kerberosDebug" value="true" />
<property name="kerberosRealm" value="my.domain.tld" />
<property name="kerberosKdc" value="ad-server.my.domain.tld" />
<property name="loginConf" value="/WEB-INF/login.conf" />
</bean>

</beans>



-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to