I'm don't think this (libjpam - the provided Drill PAM) is supported for
Windows Platform. Also, I am not sure if we have tried this with Embedded
mode.

You could may be try with a custom authenticator [1]?

[1]
http://drill.apache.org/docs/configuring-user-authentication/#implementing-and-configuring-a-custom-authenticator

On Tue, Jul 26, 2016 at 4:46 AM, Sanjiv Kumar <[email protected]> wrote:

> Hello
>        I am running Apache Drill in following version:-
>
>
> Drill Version - 1.7
> OS - Window 8.1
>
> I am running drill in embedded mode.
>
> I am trying to configure user authentication in Drill.
>
> I am referring :
>  https://drill.apache.org/docs/configuring-user-authentication/
>
> I copies libpam.so at /opt/pam (it does not contain any hadoop component)
>
> I made entry in drill-env.sh:
>
> export DRILLBIT_JAVA_OPTS="-Djava.library.path=/opt/pam/"
>
> I modified drill-override.conf:
>
>   drill.exec {
>    security.user.auth {
>
>           enabled: true,
>           packages += "org.apache.drill.exec.rpc.user.security",
>           impl: "pam",
>           pam_profiles: [ "sudo", "login" ]
>    }
>   }
>
> I am getting following error:-
>
> HADOOP_HOME not detected...
> HBASE_HOME not detected...
> Calculating Drill classpath...
> Error: Failure in starting embedded Drillbit:
> org.apache.drill.exec.exception.Dr
> illbitStartupException: Problem in finding the native library of JPAM
> (Pluggable
>  Authenticator Module API). Make sure to set Drillbit JVM option
> 'java.library.p
> ath' to point to the directory where the native JPAM exists.:no jpam in
> java.lib
> rary.path (state=,code=0)
> java.sql.SQLException: Failure in starting embedded Drillbit:
> org.apache.drill.e
> xec.exception.DrillbitStartupException: Problem in finding the native
> library of
>  JPAM (Pluggable Authenticator Module API). Make sure to set Drillbit JVM
> option
>  'java.library.path' to point to the directory where the native JPAM
> exists.:no
> jpam in java.library.path
>         at
> org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(DrillConnection
> Impl.java:127)
>         at
> org.apache.drill.jdbc.impl.DrillJdbc41Factory.newDrillConnection(Dril
> lJdbc41Factory.java:64)
>         at
> org.apache.drill.jdbc.impl.DrillFactory.newConnection(DrillFactory.ja
> va:69)
>         at
> net.hydromatic.avatica.UnregisteredDriver.connect(UnregisteredDriver.
> java:126)
>         at org.apache.drill.jdbc.Driver.connect(Driver.java:72)
>         at sqlline.DatabaseConnection.connect(DatabaseConnection.java:167)
>         at
> sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:213)
>
>         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(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>         at java.lang.reflect.Method.invoke(Unknown Source)
>         at
> sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.jav
> a: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.exception.DrillbitStartupException:
> Problem in
> finding the native library of JPAM (Pluggable Authenticator Module API).
> Make su
> re to set Drillbit JVM option 'java.library.path' to point to the
> directory wher
> e the native JPAM exists.:no jpam in java.library.path
>         at
> org.apache.drill.exec.rpc.user.security.PamUserAuthenticator.setup(Pa
> mUserAuthenticator.java:53)
>         at
> org.apache.drill.exec.rpc.user.security.UserAuthenticatorFactory.crea
> teAuthenticator(UserAuthenticatorFactory.java:90)
>         at
> org.apache.drill.exec.rpc.user.UserServer.<init>(UserServer.java:81)
>         at
> org.apache.drill.exec.service.ServiceEngine.<init>(ServiceEngine.java
> :78)
>         at org.apache.drill.exec.server.Drillbit.<init>(Drillbit.java:108)
>         at org.apache.drill.exec.server.Drillbit.<init>(Drillbit.java:84)
>         at
> org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(DrillConnection
> Impl.java:117)
>         ... 18 more
> Caused by: java.lang.UnsatisfiedLinkError: no jpam in java.library.path
>         at java.lang.ClassLoader.loadLibrary(Unknown Source)
>         at java.lang.Runtime.loadLibrary0(Unknown Source)
>         at java.lang.System.loadLibrary(Unknown Source)
>         at net.sf.jpam.Pam.<clinit>(Pam.java:51)
>         at
> org.apache.drill.exec.rpc.user.security.PamUserAuthenticator.setup(Pa
> mUserAuthenticator.java:47)
>         ... 24 more
> apache drill 1.7.0
> "start your sql engine"
>
>
> Please tell me some solution for that.?
>
>
>  ......................
>   Thanks & Regards
>     *Sanjiv*
>

Reply via email to