drill-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sorabh Hamirwasia <shamirwa...@mapr.com>
Subject Re: A problem about "Using libpam4j as the PAM Authenticator ."
Date Thu, 21 Jun 2018 23:40:32 GMT
Hi,

Since you have enabled PLAIN authentication in configuration using libpam4j you have to pass
username and password from client to authenticate. The way embedded mode in Drill works is
running an embedded Drillbit within sqlline client. Hence to connect using embedded mode you
have to pass username and password in command line like below:


./drill-embedded -n <local_username> -p <password>


Thanks,
Sorabh

________________________________
From: cupen noruler <xcupen@gmail.com>
Sent: Thursday, June 21, 2018 4:55:57 AM
To: user@drill.apache.org
Subject: A problem about "Using libpam4j as the PAM Authenticator ."

Hello guys.  I'm a newbie at apache-drill, The document was great to read,
but it's hard to exec.
My env:
 * centos7.4
 * openjdk1.8
 * apache-drill-1.13.0

My problem.
  I want to setup auth following "https://urldefense.proofpoint.com/v2/url?u=https-3A__drill.apache.org_&d=DwIBaQ&c=cskdkSMqhcnjZxdQVpwTXg&r=gRpEl0WzXE3EMrwj0KFbZXGXRyadOthF2jlYxvhTlQg&m=EHL1zJCvseAhuiUJP6Li_4u4qtxWW2bVHV9PygEwOzA&s=u75IOjEhOuDwMKlucZ_X8bI0CgM9zFJ3qrt0tYPAulU&e=
docs/using-libpam4j-as-the-pam-authenticator/"
  But it show me a big terrrible infomation when I start it.

```
> bin/drill-embedded
                                                        Jun 21, 2018
7:33:24 PM org.glassfish.jersey.server.ApplicationHandler initialize
INFO: Initiating Jersey application, version Jersey: 2.8 2014-04-29
01:25:26...
Jun 21, 2018 7:33:25 PM org.glassfish.jersey.internal.Errors logErrors
WARNING: The following warnings have been detected: HINT: A HTTP GET
method, public void org.apache.drill.exec.server.rest.LogInLogOutResources.
logout(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
throws java.lang.Exception, returns a void type. It can be intentional and
perfectly fine, but it is a little uncommon that GET method returns always
"204 No Content".
Error: Failure in connecting to Drill:
org.apache.drill.exec.rpc.NonTransientRpcException:
javax.security.sasl.SaslException: Server requires authentication using
[PLAIN]. Insufficient credentials?. [Details: Encryption: disabled ,
MaxWrappedSize: 65536 , WrapSizeLimit: 0]. (state=,code=0)
java.sql.SQLNonTransientConnectionException: Failure in connecting to
Drill: org.apache.drill.exec.rpc.NonTransientRpcException:
javax.security.sasl.SaslException: Server requires authentication using
[PLAIN]. Insufficient credentials?. [Details: Encryption: disabled ,
MaxWrappedSize: 65536 , WrapSizeLimit: 0].
        at org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(
DrillConnectionImpl.java:179)
        at org.apache.drill.jdbc.impl.DrillJdbc41Factory.newDrillConnection(
DrillJdbc41Factory.java:73)
        at org.apache.drill.jdbc.impl.DrillFactory.newConnection(
DrillFactory.java:69)
        at org.apache.calcite.avatica.UnregisteredDriver.connect(
UnregisteredDriver.java:138)
        at org.apache.drill.jdbc.Driver.connect(Driver.java:72)
        at sqlline.DatabaseConnection.connect(DatabaseConnection.java:168)
        at sqlline.DatabaseConnection.getConnection(
DatabaseConnection.java:214)
        at sqlline.Commands.connect(Commands.java:1083)
        at sqlline.Commands.connect(Commands.java:1015)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(
NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at sqlline.ReflectiveCommandHandler.execute(
ReflectiveCommandHandler.java:36)
        at sqlline.SqlLine.dispatch(SqlLine.java:742)
        at sqlline.SqlLine.initArgs(SqlLine.java:528)
        at sqlline.SqlLine.begin(SqlLine.java:596)
        at sqlline.SqlLine.start(SqlLine.java:375)
        at sqlline.SqlLine.main(SqlLine.java:268)
Caused by: org.apache.drill.exec.rpc.NonTransientRpcException:
javax.security.sasl.SaslException: Server requires authentication using
[PLAIN]. Insufficient credentials?. [Details: Encryption: disabled ,
MaxWrappedSize: 65536 , WrapSizeLimit: 0].
        at org.apache.drill.exec.rpc.user.UserClient.connect(
UserClient.java:207)
        at org.apache.drill.exec.client.DrillClient.connect(
DrillClient.java:458)
        at org.apache.drill.exec.client.DrillClient.connect(
DrillClient.java:402)
        at org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(
DrillConnectionImpl.java:170)
        ... 18 more
```

My config file: `conf/drill-override.conf`
```
drill.exec: {
    cluster-id: "drillbits1",
    zk.connect: "localhost:2181",

    impersonation: {
        enabled: true,
        max_chained_user_hops: 3
    },

    security: {
        auth.mechanisms: [ "PLAIN"]
    },

    security.user.auth: {
        enabled: true,
        packages += "org.apache.drill.exec.rpc.user.security",
        impl: "pam4j",
        pam_profiles: [ "sudo", "login" ]
    }
}
```
Could someone help me?

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message