Hi Chhaya, Few configuration you need to set:
hadoop.security.authentication=kerberos hadoop.security.authorization=true dfs.namenode.kerberos.principal=hdfs/[email protected] fs.defaultFS=hdfs://host:port Further you need to use org.apache.hadoop.security.UserGroupInformation.loginUserFromKeytab(String, String) as suggested in one of the trailing mail. Cheers, Subroto Sanyal On Mon, Nov 2, 2015 at 3:13 PM, Vishwakarma, Chhaya < [email protected]> wrote: > Code is successfully authenticating to Kerberos but when I try to run any > hdfs command I get error as "Failed to specify server's kerberos principal > name" > > Can somebody please assist me on this? > > Sent from my android device. > > > -----Original Message----- > From: andreina j <[email protected]> > To: "[email protected]" <[email protected]> > Sent: Mon, 02 Nov 2015 4:57 pm > Subject: RE: Authenticating to Kerberos enabled Hadoop cluster using Java > > Hi Chhaya, > > > > Please find below sample code . > > > > System.setProperty("java.security.krb5.conf", "D: > \\data\\Desktop\\cluster-test\\krb5.conf"); > > // Login using keytab if have access to keytab. else > UserGroupInformation.loginUserFromKeytab("hdfs/[email protected]", > " D:\\data\\Desktop\\cluster-test\\conf\\hdfs.keytab"); > > > > Note: Above 2 lines should be at the beginning in your application. > > > > Regards > > Andreina J > > > > *From:* Vishwakarma, Chhaya [mailto: > [email protected]] > *Sent:* 02 November 2015 PM 04:20 > *To:* [email protected] > *Subject:* RE: Authenticating to Kerberos enabled Hadoop cluster using > Java > > > > Thanks Niranjan It would be great if you can share a sample code if any? > > > > *From:* Niranjan Subramanian [mailto:[email protected] > <[email protected]>] > *Sent:* 02 November 2015 16:18 > *To:* [email protected] > *Subject:* Re: Authenticating to Kerberos enabled Hadoop cluster using > Java > > > > Hi Chhaya, > > > > You can use the UserGroupInformation class from org.apache.hadoop.security > package. > > > > Specifically following 2 methods of that class > > > > UserGroupInformation.setConfiguration(hdfsConfiguration); > > UserGroupInformation.loginUserFromKeytab(principal, keytabPath); > > > > Regards, > > Niranjan > > > > On 02-Nov-2015, at 4:15 pm, Vishwakarma, Chhaya < > [email protected]> wrote: > > > > I have Kerberos enabled Hadoop cluster, I need to perform HDFS operations > using JAVA code. > > I have keytab file and username can someone please suggest how can I > autheticate to Kerberos using JAVA code? > > Regards, > > Chhaya > > >
