You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@falcon.apache.org by Claudia Nunez <ci...@yahoo-inc.com.INVALID> on 2014/06/03 17:20:16 UTC

Authentication error using Kerberos

Hi Falcon developers,

I’ve been trying to follow the example found in the embedded format of Falcon. I haven’t been able to authenticate my user  with oozie using kerberos. I’m getting the following error:


Error: Bad Request;Invalid Workflow server or port: http://oozie-server:4080/oozie/

Unable to reach Oozie server.

Below is an snippet of the log throwing a null point exception. It’s not very clear to me what might be causing this. Any ideas?

Thanks for you help,

Claudia


2014-06-03 15:11:51,299 WARN  - [main:] ~ Nested in javax.servlet.ServletException: javax.security.auth.login.LoginException: java.lang.NullPointerException

        at com.sun.security.auth.module.Krb5LoginModule.commit(Krb5LoginModule.java:1062)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:601)

        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:784)

        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:203)

        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:721)

        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:719)

        at java.security.AccessController.doPrivileged(Native Method)

        at javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:718)

        at javax.security.auth.login.LoginContext.login(LoginContext.java:591)

        at org.apache.hadoop.security.authentication.server.KerberosAuthenticationHandler.init(KerberosAuthenticationHandler.java:169)

        at org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:146)

        at org.apache.falcon.security.BasicAuthFilter.init(BasicAuthFilter.java:82)

        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)

        at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)

        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)

        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)

        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)

        at org.mortbay.jetty.Server.doStart(Server.java:224)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:50)

        at org.apache.falcon.Main.main(Main.java:98)

: (log:89)

javax.security.auth.login.LoginException: java.lang.NullPointerException

        at com.sun.security.auth.module.Krb5LoginModule.commit(Krb5LoginModule.java:1062)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:601)


        at org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:146)

        at org.apache.falcon.security.BasicAuthFilter.init(BasicAuthFilter.java:82)

        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)

        at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)

        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)

        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)

        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)

        at org.mortbay.jetty.Server.doStart(Server.java:224)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:50)

        at org.apache.falcon.Main.main(Main.java:98)


        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:886)

        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:203)

        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:721)

        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:719)

        at java.security.AccessController.doPrivileged(Native Method)

        at javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:718)

        at javax.security.auth.login.LoginContext.login(LoginContext.java:591)

        at org.apache.hadoop.security.authentication.server.KerberosAuthenticationHandler.init(KerberosAuthenticationHandler.java:169)

        at org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:146)

        at org.apache.falcon.security.BasicAuthFilter.init(BasicAuthFilter.java:82)

        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)

        at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)

        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)

        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)

        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)

        at org.mortbay.jetty.Server.doStart(Server.java:224)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)

        at org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:50)

        at org.apache.falcon.Main.main(Main.java:98)

2014-06-03 15:11:51,340 INFO  - [main:] ~ Started SslSocketConnector@0.0.0.0:15443 (log:67)



Re: Authentication error using Kerberos

Posted by Seetharam Venkatesh <ve...@innerzeal.com>.
Hi Claudia,

This is failing in the startup itself, it does not even get into Oozie.
Have you followed the instructions in setting up falcon?

Restart falcon with the following

* Pass jvm props to falcon startup in falcon-env.sh -
-Dsun.security.krb5.debug=true
* Set log4j level to debug for security logger

Few questions:

* Did Falcon server come up?
Did org.apache.falcon.security.AuthenticationInitializationService
initialize with out errors?
logs/falcon.application.log

* startup.properties
*.falcon.authentication.type and *.falcon.http.authentication.type must be
set to kerberos

* falcon user (user starting falcon) must be setup as a proxy user in oozie
and hadoop core-site.xml

* Have you configured the SPNEGO principal and keytabs correctly with HTTP
principal
klist -kt $spnego.falcon.keytab

* Are you able to execute oozie cli?

It'd greatly help to debug if you could attach the following:

* startup.properties
* logs/falcon.application.log
* logs/falcon.security.audit.log

Thanks!


On Tue, Jun 3, 2014 at 8:20 AM, Claudia Nunez <cinunez@yahoo-inc.com.invalid
> wrote:

> Hi Falcon developers,
>
> I’ve been trying to follow the example found in the embedded format of
> Falcon. I haven’t been able to authenticate my user  with oozie using
> kerberos. I’m getting the following error:
>
>
> Error: Bad Request;Invalid Workflow server or port:
> http://oozie-server:4080/oozie/
>
> Unable to reach Oozie server.
>
> Below is an snippet of the log throwing a null point exception. It’s not
> very clear to me what might be causing this. Any ideas?
>
> Thanks for you help,
>
> Claudia
>
>
> 2014-06-03 15:11:51,299 WARN  - [main:] ~ Nested in
> javax.servlet.ServletException: javax.security.auth.login.LoginException:
> java.lang.NullPointerException
>
>         at
> com.sun.security.auth.module.Krb5LoginModule.commit(Krb5LoginModule.java:1062)
>
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>         at java.lang.reflect.Method.invoke(Method.java:601)
>
>         at
> javax.security.auth.login.LoginContext.invoke(LoginContext.java:784)
>
>         at
> javax.security.auth.login.LoginContext.access$000(LoginContext.java:203)
>
>         at
> javax.security.auth.login.LoginContext$5.run(LoginContext.java:721)
>
>         at
> javax.security.auth.login.LoginContext$5.run(LoginContext.java:719)
>
>         at java.security.AccessController.doPrivileged(Native Method)
>
>         at
> javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:718)
>
>         at
> javax.security.auth.login.LoginContext.login(LoginContext.java:591)
>
>         at
> org.apache.hadoop.security.authentication.server.KerberosAuthenticationHandler.init(KerberosAuthenticationHandler.java:169)
>
>         at
> org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:146)
>
>         at
> org.apache.falcon.security.BasicAuthFilter.init(BasicAuthFilter.java:82)
>
>         at
> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>
>         at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>
>         at
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>
>         at
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>
>         at
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>
>         at org.mortbay.jetty.Server.doStart(Server.java:224)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:50)
>
>         at org.apache.falcon.Main.main(Main.java:98)
>
> : (log:89)
>
> javax.security.auth.login.LoginException: java.lang.NullPointerException
>
>         at
> com.sun.security.auth.module.Krb5LoginModule.commit(Krb5LoginModule.java:1062)
>
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>         at java.lang.reflect.Method.invoke(Method.java:601)
>
>
>         at
> org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:146)
>
>         at
> org.apache.falcon.security.BasicAuthFilter.init(BasicAuthFilter.java:82)
>
>         at
> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>
>         at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>
>         at
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>
>         at
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>
>         at
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>
>         at org.mortbay.jetty.Server.doStart(Server.java:224)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:50)
>
>         at org.apache.falcon.Main.main(Main.java:98)
>
>
>         at
> javax.security.auth.login.LoginContext.invoke(LoginContext.java:886)
>
>         at
> javax.security.auth.login.LoginContext.access$000(LoginContext.java:203)
>
>         at
> javax.security.auth.login.LoginContext$5.run(LoginContext.java:721)
>
>         at
> javax.security.auth.login.LoginContext$5.run(LoginContext.java:719)
>
>         at java.security.AccessController.doPrivileged(Native Method)
>
>         at
> javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:718)
>
>         at
> javax.security.auth.login.LoginContext.login(LoginContext.java:591)
>
>         at
> org.apache.hadoop.security.authentication.server.KerberosAuthenticationHandler.init(KerberosAuthenticationHandler.java:169)
>
>         at
> org.apache.hadoop.security.authentication.server.AuthenticationFilter.init(AuthenticationFilter.java:146)
>
>         at
> org.apache.falcon.security.BasicAuthFilter.init(BasicAuthFilter.java:82)
>
>         at
> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
>
>         at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
>
>         at
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
>
>         at
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
>
>         at
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>
>         at org.mortbay.jetty.Server.doStart(Server.java:224)
>
>         at
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
>
>         at
> org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:50)
>
>         at org.apache.falcon.Main.main(Main.java:98)
>
> 2014-06-03 15:11:51,340 INFO  - [main:] ~ Started
> SslSocketConnector@0.0.0.0:15443 (log:67)
>
>
>


-- 
Regards,
Venkatesh

“Perfection (in design) is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.”
- Antoine de Saint-Exupéry