I think the env variable is: DRILL_SHELL_JAVA_OPTS for SqlLine shell script.
On Sat, Feb 27, 2016 at 1:13 AM, Devender Yadav <[email protected]> wrote: > Is this PAM authentication work for Drill in embedded mode? > > Regards, > Devender > > On Fri, Feb 19, 2016 at 7:59 PM, Devender Yadav <[email protected]> wrote: > > > Some more details: > > > > Drill Version - 1.4 > > OS - Ubuntu 14.0.4 > > > > I am running drill in embedded mode. > > > > Regards, > > Devender > > > > On Fri, Feb 19, 2016 at 7:26 PM, Devender Yadav <[email protected]> > wrote: > > > >> HI, > >> > >> 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 exception: > >> > >> > >> java.sql.SQLException: Failure in starting embedded Drillbit: > >> org.apache.drill.exec.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>(DrillConnectionImpl.java:127) > >> at > >> > org.apache.drill.jdbc.impl.DrillJdbc41Factory.newDrillConnection(DrillJdbc41Factory.java:64) > >> at > >> > org.apache.drill.jdbc.impl.DrillFactory.newConnection(DrillFactory.java: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(NativeMethodAccessorImpl.java:57) > >> at > >> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >> at java.lang.reflect.Method.invoke(Method.java:606) > >> 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.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.exec.rpc.user.security.PamUserAuthenticator.setup(PamUserAuthenticator.java:53) > >> at > >> > org.apache.drill.exec.rpc.user.security.UserAuthenticatorFactory.createAuthenticator(UserAuthenticatorFactory.java:90) > >> at org.apache.drill.exec.rpc.user.UserServer.<init>(UserServer.java:78) > >> at > >> > org.apache.drill.exec.service.ServiceEngine.<init>(ServiceEngine.java:64) > >> at org.apache.drill.exec.server.Drillbit.<init>(Drillbit.java:190) > >> at org.apache.drill.exec.server.Drillbit.<init>(Drillbit.java:178) > >> at > >> > org.apache.drill.jdbc.impl.DrillConnectionImpl.<init>(DrillConnectionImpl.java:117) > >> ... 18 more > >> Caused by: java.lang.UnsatisfiedLinkError: no jpam in java.library.path > >> at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1886) > >> at java.lang.Runtime.loadLibrary0(Runtime.java:849) > >> at java.lang.System.loadLibrary(System.java:1088) > >> at net.sf.jpam.Pam.<clinit>(Pam.java:51) > >> at > >> > org.apache.drill.exec.rpc.user.security.PamUserAuthenticator.setup(PamUserAuthenticator.java:47) > >> ... 24 more > >> > >> > >> > >> > >> Regards, > >> Devender > >> > > > > >
