You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@storm.apache.org by Max Bridgewater <ma...@gmail.com> on 2015/11/22 16:56:56 UTC
Simple Authentication with Storm 0.10.0
Hi,
I am trying to setup Storm 0.10.0 with security. In the example provided
here https://github.com/apache/storm/blob/v0.10.0-beta/SECURITY.md, the
authentication type is kerberos.
The documentation on AuthenticationFilter suggests that I can also use
simple authentication type.
My question: is the simple type supported in Storm 0.10.0? If so, how
should I configure it?
Here is what I tried. In my storm.yaml, I added this:
ui.filter:
"org.apache.hadoop.security.authentication.server.AuthenticationFilter"
ui.filter.params:
"type": "simple"
"user.name": "badman"
But when I hit the UI, I get the following exception in ui.log:
2015-11-22 10:28:05.170 o.a.s.s.o.e.j.s.ServletHandler [WARN] Error for
/api/v1/
supervisor/summary
java.lang.NoClassDefFoundError: org/apache/http/client/utils/URLEncodedUtils
at
org.apache.hadoop.security.authentication.server.PseudoAuthentication
Handler.getUserName(PseudoAuthenticationHandler.java:124)
~[hadoop-auth-2.4.0.ja
r:?]
at
org.apache.hadoop.security.authentication.server.PseudoAuthentication
Handler.authenticate(PseudoAuthenticationHandler.java:160)
~[hadoop-auth-2.4.0.j
ar:?]
I then downloaded the apache httpclient (
http://apache.mirror.vexxhost.com//httpcomponents/httpclient/binary/httpcomponents-client-4.5.1-bin.tar.gz)
and unzipped it into the storm lib folder. Now I am getting this exception:
2015-11-22 10:47:37.223 o.a.s.s.o.e.j.s.ServletHandler [WARN]
/api/v1/supervisor/summary
java.lang.NullPointerException
at
org.apache.http.client.utils.URLEncodedUtils.parse(URLEncodedUtils.java:235)
~[httpclient-4.5.1.jar:4.5.1]
at
org.apache.hadoop.security.authentication.server.PseudoAuthenticationHandler.getUserName(PseudoAuthenticationHandler.java:124)
~[hadoop-auth-2.4.0.jar:?]
Any help would be much appreciated.
Re: Simple Authentication with Storm 0.10.0
Posted by Max Bridgewater <ma...@gmail.com>.
Sorry. Issue resolved. Looking at the code,
PseudoAuthenticationHandler.java:124, it appears that I have to send
user.name as request parameter.
Thanks,
Max.
On Sun, Nov 22, 2015 at 10:56 AM, Max Bridgewater <max.bridgewater@gmail.com
> wrote:
> Hi,
>
> I am trying to setup Storm 0.10.0 with security. In the example provided
> here https://github.com/apache/storm/blob/v0.10.0-beta/SECURITY.md, the
> authentication type is kerberos.
>
> The documentation on AuthenticationFilter suggests that I can also use
> simple authentication type.
>
> My question: is the simple type supported in Storm 0.10.0? If so, how
> should I configure it?
>
>
> Here is what I tried. In my storm.yaml, I added this:
>
> ui.filter:
> "org.apache.hadoop.security.authentication.server.AuthenticationFilter"
> ui.filter.params:
> "type": "simple"
> "user.name": "badman"
>
>
> But when I hit the UI, I get the following exception in ui.log:
>
> 2015-11-22 10:28:05.170 o.a.s.s.o.e.j.s.ServletHandler [WARN] Error for
> /api/v1/
> supervisor/summary
> java.lang.NoClassDefFoundError:
> org/apache/http/client/utils/URLEncodedUtils
> at
> org.apache.hadoop.security.authentication.server.PseudoAuthentication
> Handler.getUserName(PseudoAuthenticationHandler.java:124)
> ~[hadoop-auth-2.4.0.ja
> r:?]
> at
> org.apache.hadoop.security.authentication.server.PseudoAuthentication
> Handler.authenticate(PseudoAuthenticationHandler.java:160)
> ~[hadoop-auth-2.4.0.j
> ar:?]
>
>
> I then downloaded the apache httpclient (
> http://apache.mirror.vexxhost.com//httpcomponents/httpclient/binary/httpcomponents-client-4.5.1-bin.tar.gz)
> and unzipped it into the storm lib folder. Now I am getting this exception:
>
>
> 2015-11-22 10:47:37.223 o.a.s.s.o.e.j.s.ServletHandler [WARN]
> /api/v1/supervisor/summary
> java.lang.NullPointerException
> at
> org.apache.http.client.utils.URLEncodedUtils.parse(URLEncodedUtils.java:235)
> ~[httpclient-4.5.1.jar:4.5.1]
> at
> org.apache.hadoop.security.authentication.server.PseudoAuthenticationHandler.getUserName(PseudoAuthenticationHandler.java:124)
> ~[hadoop-auth-2.4.0.jar:?]
>
>
>
> Any help would be much appreciated.
>