I modified the subject line a bit.

Looking at past forum messages, it seems that the jcifsConfig bean is 
configured a bit differently in order to enable NTLM authentication. I only 
have this-


    <bean name="jcifsConfig"
        
class="org.jasig.cas.support.spnego.authentication.handler.support.JCIFSConfig">
            <property name="loginConf" 
value="C:\tomcat-6\webapps\cas-server-3.3\WEB-INF\login.conf"/>
            <property name="jcifsDomain" value="bling.com" />
            <property name="jcifsDomainController" value="XTC-MNC1-C1-3-Z" />
    </bean>

However, I read an mail where extra stuff was configured-


<property name="jcifsServicePrincipal"
value="HTTP/test...@..."/>
<property name="jcifsServicePassword" value="Tom12345"/>
<property name="jcifsUsername"
value="spnegouser"/>                                     
<property name="jcifsPassword"
value="Tom12345"/>
<property name="loginConf"
value="/WEB-INF/login.conf" /> <property name="kerberosDebug"
value="true"/>

Can someone kindly explain which jcifs properties need to be set for NTLM 
authentication? What is jcifsServicePrincipal, jcifsServicePassword, 
jcifsUserName, jcifsPassword? 
As mentioned in my previous message (below), NTLM appears to work locally 
(tomcat, CAS, IE on the same machine) but has issues when trying to access the 
application from another machine (when IE is on another machine).

Thanks for your time.




________________________________
From: tedzo <tedzo2...@yahoo.com>
To: Yale CAS mailing list <cas@tp.its.yale.edu>
Sent: Friday, January 23, 2009 4:46:22 PM
Subject: Turning off Kerberos


I am encountering a strange problem while attempting to configure NTLM 
authentication. I followed the directions in 
http://www.ja-sig.org/wiki/display/CASUM/SPNEGO (with changes to login.conf and 
jcifsConfig bean, as below). When I have all elements (tomcat, CAS, my webapp) 
on my laptop, things are fine. I login to my laptop and I am granted access to 
my webapp without being challenged. However, when I attempt to access my webapp 
from another machine, I hit an exception which appears to suggest that Kerberos 
authentication is being attempted. I am not sure why that would be the case 
since I have not configured Kerberos anywhere.

If I can figure out how to disable Kerberos authentication, I should be good, I 
think. How do I disable kerberos?

Thanks for your time.

My login.conf is as follows:

jcifs.spnego.initiate {
    com.sun.security.auth.module.NTLoginModule required;
};
jcifs.spnego.accept {
    com.sun.security.auth.module.NTLoginModule required;
};

My jcifsConfig bean is as follows:
    <bean name="jcifsConfig"
        
class="org.jasig.cas.support.spnego.authentication.handler.support.JCIFSConfig">
            <property name="loginConf" 
value="C:\tomcat-6\webapps\cas-server-3.3\WEB-INF\login.conf"/>
            <property name="jcifsDomain" value="bling.com" />
            <property name="jcifsDomainController" value="XTC-MNC1-C1-3-Z" />
    </bean>

Exception I see:

jcifs.spnego.AuthenticationException: Error performing Kerberos authentication:
java.lang.reflect.InvocationTargetException
        at jcifs.spnego.Authentication.processKerberos(Authentication.java:447)
        at jcifs.spnego.Authentication.processSpnego(Authentication.java:346)
        at jcifs.spnego.Authentication.process(Authentication.java:235)
        at org.jasig.cas.support.spnego.authentication.handler.support.JCIFSSpne
goAuthenticationHandler.doAuthentication(JCIFSSpnegoAuthenticationHandler.java:56)
        at 
org.jasig.cas.authentication.handler.support.AbstractPreAndPostProcessingAuthenticationHandler.authenticate(AbstractPreAndPostProcessingAuthenticationHandler.java:71)
        at 
org.jasig.cas.authentication.AuthenticationManagerImpl.authenticate(AuthenticationManagerImpl.java:88)
        at 
org.jasig.cas.CentralAuthenticationServiceImpl.createTicketGrantingTicket(CentralAuthenticationServiceImpl.java:417)
        at 
org.jasig.cas.web.flow.AbstractNonInteractiveCredentialsAction.doExecute(AbstractNonInteractiveCredentialsAction.java:80)
        at 
org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:192)
        at 
org.springframework.webflow.engine.AnnotatedAction.execute(AnnotatedAction.java:146)
        at 
org.springframework.webflow.engine.ActionExecutor.execute(ActionExecutor.java:59)
        at 
org.springframework.webflow.engine.ActionState.doEnter(ActionState.java:156)
        at org.springframework.webflow.engine.State.enter(State.java:191)
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:212)
        at 
org.springframework.webflow.engine.TransitionableState.onEvent(TransitionableState.java:107)
        at org.springframework.webflow.engine.Flow.onEvent(Flow.java:534)
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.signalEvent(RequestControlContextImpl.java:205)
        at 
org.springframework.webflow.engine.ActionState.doEnter(ActionState.java:161)
        at org.springframework.webflow.engine.State.enter(State.java:191)
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:212)
        at 
org.springframework.webflow.engine.DecisionState.doEnter(DecisionState.java:54)
        at org.springframework.webflow.engine.State.enter(State.java:191)
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:212)
        at 
org.springframework.webflow.engine.DecisionState.doEnter(DecisionState.java:54)
        at org.springframework.webflow.engine.State.enter(State.java:191)
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:212)
        at 
org.springframework.webflow.engine.TransitionableState.onEvent(TransitionableState.java:107)
        at org.springframework.webflow.engine.Flow.onEvent(Flow.java:534)
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.signalEvent(RequestControlContextImpl.java:205)
        at 
org.springframework.webflow.engine.ActionState.doEnter(ActionState.java:161)
        at org.springframework.webflow.engine.State.enter(State.java:191)
        at org.springframework.webflow.engine.Flow.start(Flow.java:521)
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.start(RequestControlContextImpl.java:193)
        at 
org.springframework.webflow.engine.impl.FlowExecutionImpl.start(FlowExecutionImpl.java:177)
        at 
org.springframework.webflow.executor.FlowExecutorImpl.launch(FlowExecutorImpl.java:187)
        at 
org.springframework.webflow.executor.support.FlowRequestHandler.handleFlowRequest(FlowRequestHandler.java:125)
        at 
org.springframework.webflow.executor.mvc.FlowController.handleRequestInternal(FlowController.java:165)
        at 
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
        at 
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
        at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
        at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at 
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at 
org.jasig.cas.web.init.SafeDispatcherServlet.service(SafeDispatcherServlet.java:115)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.inspektr.common.web.ClientInfoThreadLocalFilter.doFilterInternal(ClientInfoThreadLocalFilter.java:48)
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
        at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at jcifs.spnego.Authentication.processKerberos(Authentication.java:430)
        ... 61 more
Caused by: java.security.PrivilegedActionException: 
java.lang.reflect.InvocationTargetException
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
        ... 66 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at jcifs.spnego.Authentication$ServerAction.run(Authentication.java:507)

        ... 68 more
Caused by: GSSException: Cannot import null name
        at sun.security.jgss.GSSNameImpl.<init>(GSSNameImpl.java:121)
        at sun.security.jgss.GSSNameImpl.<init>(GSSNameImpl.java:111)
        at sun.security.jgss.GSSManagerImpl.createName(GSSManagerImpl.java:113)
        ... 73 more
[Loaded java.net.SocketTimeoutException from C:\Program Files\Java\jdk1.6.0\jre\
lib\rt.jar]
[Loaded sun.net.ConnectionResetException from C:\Program Files\Java\jdk1.6.0\jre
\lib\rt.jar]


      
_______________________________________________
Yale CAS mailing list
cas@tp.its.yale.edu
http://tp.its.yale.edu/mailman/listinfo/cas

Reply via email to