[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16566312#comment-16566312 ] Reid Chan commented on HBASE-20886: --- bq. One open thought: how does this play with MapReduce code where we are connecting to HBase via delegation-tokens instead of real Kerberos credentials? Sorry Josh, you mentioned once, it was my oversight.. Will be back with demo results. [~elserj] > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16564183#comment-16564183 ] Josh Elser commented on HBASE-20886: [~reidchan] sorry for the delay! Your v8 patch looks OK. I think the only concern I have (not sure if it's legitimate, either) is over MapReduce. I don't know if we have any MapReduce tests with Kerberos turned on. Assuming not, did you try out this new feature when running a M/R job? > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16563638#comment-16563638 ] Hudson commented on HBASE-20886: Results for branch master [build #414 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/master/414/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/master/414//General_Nightly_Build_Report/] (x) {color:red}-1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/master/414//JDK8_Nightly_Build_Report_(Hadoop2)/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/master/414//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (/) {color:green}+1 client integration test{color} > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16563533#comment-16563533 ] Hudson commented on HBASE-20886: Results for branch branch-2 [build #1048 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/1048/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/1048//General_Nightly_Build_Report/] (/) {color:green}+1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/1048//JDK8_Nightly_Build_Report_(Hadoop2)/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/1048//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (/) {color:green}+1 client integration test{color} > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16563081#comment-16563081 ] Reid Chan commented on HBASE-20886: --- Pushed to master and branch-2. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16563075#comment-16563075 ] Reid Chan commented on HBASE-20886: --- Thanks for pointing out, yea~, it's bad. {quote} direct users of UGI should self-ensure and call the checkTGTAndReloginFromKeytab functionality themselves. {quote} That's what this patch does. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16562329#comment-16562329 ] Wei-Chiu Chuang commented on HBASE-20886: - It's just too bad HADOOP-9567 never completed. User identity is a tricky & sensitive issue and it should ideally be handled within Hadoop. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16561367#comment-16561367 ] Reid Chan commented on HBASE-20886: --- ping [~elserj], if you have free cycles. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16560792#comment-16560792 ] Reid Chan commented on HBASE-20886: --- Changed to "New Feature" and added RN. Let's wait if more comments. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: New Feature > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Fix For: 3.0.0, 2.2.0 > > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16559976#comment-16559976 ] Sean Busbey commented on HBASE-20886: - +1 nit: maybe we call this "new feature" instead of "improvement". could see it going either way. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16559665#comment-16559665 ] Hadoop QA commented on HBASE-20886: --- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 11s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 23s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 46s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 7m 13s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 2m 14s{color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 5m 16s{color} | {color:blue} branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 35s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 36s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 3m 39s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 12s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 50s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 7m 18s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 7m 18s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 2m 17s{color} | {color:green} root: The patch generated 0 new + 24 unchanged - 2 fixed = 24 total (was 26) {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 5m 3s{color} | {color:blue} patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 32s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 10m 10s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 58s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 3m 42s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green}182m 17s{color} | {color:green} root in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 1m 47s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}259m 1s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:b002b0b | |
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16559397#comment-16559397 ] Reid Chan commented on HBASE-20886: --- v8 tries to fix checkstyle {{-1}} > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch, > HBASE-20886.master.008.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16558272#comment-16558272 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 15s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 17s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 5m 44s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 8m 25s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 2m 37s{color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 6m 2s{color} | {color:blue} branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 5m 6s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 4m 39s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 4m 43s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 13s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 5m 54s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 8m 34s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 8m 34s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 2m 31s{color} | {color:red} root: The patch generated 3 new + 24 unchanged - 2 fixed = 27 total (was 26) {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 5m 44s{color} | {color:blue} patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 59s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 11m 14s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 5m 15s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 4m 51s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green}191m 53s{color} | {color:green} root in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 1m 48s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}281m 52s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:b002b0b | | JIRA Issu
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16558043#comment-16558043 ] Reid Chan commented on HBASE-20886: --- rebase master branch. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16558040#comment-16558040 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 0s{color} | {color:blue} Docker mode activated. {color} | | {color:red}-1{color} | {color:red} patch {color} | {color:red} 0m 4s{color} | {color:red} HBASE-20886 does not apply to master. Rebase required? Wrong Branch? See https://yetus.apache.org/documentation/0.7.0/precommit-patchnames for help. {color} | \\ \\ || Subsystem || Report/Notes || | JIRA Issue | HBASE-20886 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12933160/HBASE-20886.master.007.patch | | Console output | https://builds.apache.org/job/PreCommit-HBASE-Build/13810/console | | Powered by | Apache Yetus 0.7.0 http://yetus.apache.org | This message was automatically generated. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch, > HBASE-20886.master.006.patch, HBASE-20886.master.007.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16556957#comment-16556957 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 21s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 27s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 53s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 7m 0s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 59s{color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 4m 49s{color} | {color:blue} branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 22s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 38s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 3m 43s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 14s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 37s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 6m 57s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 6m 57s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 2m 1s{color} | {color:red} root: The patch generated 3 new + 25 unchanged - 1 fixed = 28 total (was 26) {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 1s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 4m 47s{color} | {color:blue} patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 19s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 9m 51s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 4m 5s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 3m 47s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red} 8m 50s{color} | {color:red} root in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 40s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 82m 24s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.client.TestBufferedMutator | | | hadoop.hbase.client.TestClientNoC
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16556869#comment-16556869 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 10s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 22s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 49s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 7m 10s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 2m 14s{color} | {color:green} master passed {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 5m 2s{color} | {color:blue} branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 37s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 49s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 3m 52s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 12s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:red}-1{color} | {color:red} mvninstall {color} | {color:red} 2m 2s{color} | {color:red} root in the patch failed. {color} | | {color:red}-1{color} | {color:red} compile {color} | {color:red} 3m 31s{color} | {color:red} root in the patch failed. {color} | | {color:red}-1{color} | {color:red} javac {color} | {color:red} 3m 31s{color} | {color:red} root in the patch failed. {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 2m 14s{color} | {color:red} root: The patch generated 5 new + 25 unchanged - 1 fixed = 30 total (was 26) {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:blue}0{color} | {color:blue} refguide {color} | {color:blue} 5m 10s{color} | {color:blue} patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. {color} | | {color:red}-1{color} | {color:red} shadedjars {color} | {color:red} 3m 32s{color} | {color:red} patch has 20 errors when building our shaded downstream artifacts. {color} | | {color:red}-1{color} | {color:red} hadoopcheck {color} | {color:red} 1m 52s{color} | {color:red} The patch causes 20 errors with Hadoop v2.7.4. {color} | | {color:red}-1{color} | {color:red} hadoopcheck {color} | {color:red} 3m 51s{color} | {color:red} The patch causes 20 errors with Hadoop v3.0.0. {color} | | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Skipped patched modules with no Java source: . {color} | | {color:red}-1{color} | {color:red} findbugs {color} | {color:red} 0m 25s{color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 3m 37s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red} 8m 10s{color} | {color:red} root in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 37s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 68m 3s{color} | {color:black}
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16556812#comment-16556812 ] Reid Chan commented on HBASE-20886: --- Trigger QA again. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16555997#comment-16555997 ] Reid Chan commented on HBASE-20886: --- bq. One final thought: ... Multiple credentials-like issues always happens on server-side, e.g, hbase thrift server. But i doubt client-side should handle this, or leave it to client's application i think... > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16555985#comment-16555985 ] Reid Chan commented on HBASE-20886: --- v5 addresses the following: * bq.Could you expand this check to include the principal of the current user with krb credentials against the specified principal in the configuration? * bq. update the javadoc for AuthUtil * bq. make AuthUtil IA.Private in 3.0 * bq. mark AuthUtil as deprecated in any earlier release lines * update both ConnectionFactory class javadocs and the ["Client-side Configuration for Secure Operation " section of the ref guide|http://hbase.apache.org/book.html#_client_side_configuration_for_secure_operation] i'll also update release note later. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch, HBASE-20886.master.005.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16554397#comment-16554397 ] Josh Elser commented on HBASE-20886: {quote}It seems like there's minimal risk of surprising folks about credentials in the JVM since folks have to opt-in by setting configuration values to point at a keytab / principal. {quote} That's a good point. I hadn't looked closely enough at the patch. I think documenting these configuration keys sufficiently would be safe enough. {code:java} + if (user.getUGI().hasKerberosCredentials()) { +// There's already user, just return. +return user;{code} This worries me a little bit :). Could you expand this check to include the principal of the current user with krb credentials against the specified principal in the configuration? That would help me sleep better at night. One open thought: how does this play with MapReduce code where we are connecting to HBase via delegation-tokens instead of real Kerberos credentials? One final (perhaps meandering) thought: can we make an API which would insulate us from multiple credentials-like issues? Let me pseudo-code ... (I have no idea if UGI renewal actually works in this context, or if this is defacto "good", just thinking out-loud). {code:java} public T callWithCredentials(Configuration conf, Callable clientOperation) throws Exception { UserGroupInformation ugi = UGI.loginUserAndReturnUGI(conf.get(client_principal), conf.get(client_keytab)); ugi.doAs(new PrivilegedExceptionAction() { T call() throws Exception { Chore c = AuthUtil.spawnRenewalChore(); try (Connection conn = ConnectionFactory.getConnection(conf)) { clientOperation.call(conn); } finally { c.stop(); } } }); }{code} > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16554282#comment-16554282 ] Sean Busbey commented on HBASE-20886: - {quote} bq. Please keep these constants somewhere other than HConstants Any recommendation? {quote} AuthUtil seems fine to me. {quote} What about keeping AuthUtil IA.Public, but marking AuthUtil.getAuthChore IA.Private (canary only), AuthUtil.loginClient and AuthUtil.getAuthRenewalChore are quite handy IMO. {quote} But why would anyone outside of the project use these if connection setup handles making the calls transparently? {quote} bq. where we smash some existing credentials in the JVM. If client plans to login 2 identities in one application, no matter this client runs hbase or not, his JVM will have credentials issue. As long as the same identity, from my knowledge, it is just a matter of expired time update, comparing to those long running job with numerous re-login, login one more time at the beginning does no harm. (But i already address this concern from v2, to reuse the login client if it exists) {quote} I don't think this is "too helpful" FWIW. I just don't want folks to think of it as "magic" that they have to learn from reading the source. It seems like there's minimal risk of surprising folks about credentials in the JVM since folks have to opt-in by setting configuration values to point at a keytab / principal. If we want to be extra sure that this plays well we could try to use two different Configuration instances to connect with different keytab/principals within a single JVM instance. I think it's find for that to be a follow-on since folks will be no further from doing that themselves if they just don't set the keytab/principal configs we look for here. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16553746#comment-16553746 ] Reid Chan commented on HBASE-20886: --- The original thought of this issue comes from description. {quote} There're lots of questions about how to connect to kerberized hbase cluster through hbase client api from user-mail and slack channel. {quote} bq. where we smash some existing credentials in the JVM. If client plans to login 2 identities in one application, no matter this client runs hbase or not, his JVM will have credentials issue. As long as the same identity, from my knowledge, it is just a matter of expired time update, comparing to those long running job with numerous re-login, login one more time at the beginning does no harm. (But i already address this concern from v2, to reuse the login client if it exists) I'll address those comments and upload a new patch, if folks still think it unnecessary(-1) or "too helpful"(-0), i shall leave it. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16553511#comment-16553511 ] Josh Elser commented on HBASE-20886: {quote}Any recommendation? {quote} I'd just add them to AuthUtil. Sorry for being late to the party – but I agree with what I see Duo and Sean have already chimed in about. I'm worried about being "too helpful" and causing problems where we smash some existing credentials in the JVM. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16552940#comment-16552940 ] Reid Chan commented on HBASE-20886: --- {{AuthUtil.getAuthChore(conf)}} one method does login and generate auth chore. That's why i separated it to {{AuthUtil.loginClient}} and {{AuthUtil.getAuthRenewalChore}}. What about keeping AuthUtil IA.Public, but marking {{AuthUtil.getAuthChore}} IA.Private (canary only), {{AuthUtil.loginClient}} and {{AuthUtil.getAuthRenewalChore}} are quite handy IMO. WDYT [~busbey]. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16552817#comment-16552817 ] Reid Chan commented on HBASE-20886: --- bq. Please keep these constants somewhere other than HConstants Any recommendation? > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16552734#comment-16552734 ] Sean Busbey commented on HBASE-20886: - {code} diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java index beb65faa72..43059d806f 100644 --- a/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java +++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java @@ -1374,6 +1374,10 @@ public final class HConstants { "hbase.util.default.lossycounting.errorrate"; public static final String NOT_IMPLEMENTED = "Not implemented"; + public static final String HBASE_CLIENT_KEYTAB_FILE = "hbase.client.keytab.file"; + + public static final String HBASE_CLIENT_KERBEROS_PRINCIPAL = "hbase.client.keytab.principal"; + private HConstants() { // Can't be instantiated with this ctor. } {code} Please keep these constants somewhere other than HConstants. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16552733#comment-16552733 ] Sean Busbey commented on HBASE-20886: - The existing Javadocs for AuthUtil clearly state that it is the way to do long standing authentication renewals, [for example here are the 2.0 javadocs|http://hbase.apache.org/2.0/apidocs/org/apache/hadoop/hbase/AuthUtil.html] {quote} @InterfaceAudience.Public public class AuthUtil extends Object Utility methods for helping with security tasks. Downstream users may rely on this class to handle authenticating via keytab where long running services need access to a secure HBase cluster. Callers must ensure: HBase configuration files are in the Classpath hbase.client.keytab.file points to a valid keytab on the local filesystem hbase.client.kerberos.principal gives the Kerberos principal to use {code} ChoreService choreService = null; // Presumes HBase configuration files are on the classpath final Configuration conf = HBaseConfiguration.create(); final ScheduledChore authChore = AuthUtil.getAuthChore(conf); if (authChore != null) { choreService = new ChoreService("MY_APPLICATION"); choreService.scheduleChore(authChore); } try { // do application work } finally { if (choreService != null) { choreService.shutdown(); } } {code} See the "Running Canary in a Kerberos-enabled Cluster" section of the HBase Reference Guide for an example of configuring a user of this Auth Chore to run on a secure cluster. {quote} I like the idea of abstracting this away, but if we do so then * we need to update the javadoc for AuthUtil so that folks aren't spinning up their own auth chore * we should make AuthUtil IA.Private in 3.0 since it will no longer need to be downstream addressable * we should mark AuthUtil as deprecated in any earlier release lines with a note that it's becoming internal and this will transparently work for applications * we need a release note that warns folks about what (if anything) will happen if their application already does this chore scheduling once they upgrade * Some user facing doc (probably javadocs and ref guide) need to note that these configs are "the right way" to get long term credential renewal. Maybe {{ConnectionFactory}} class javadocs and the ["Client-side Configuration for Secure Operation " section of the ref guide|http://hbase.apache.org/book.html#_client_side_configuration_for_secure_operation]? > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16552434#comment-16552434 ] Hadoop QA commented on HBASE-20886: --- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 10s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 22s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 42s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 46s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 2m 2s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 29s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 36s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 7s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 14s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 2m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 22s{color} | {color:green} hbase-common: The patch generated 0 new + 7 unchanged - 1 fixed = 7 total (was 8) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 31s{color} | {color:green} The patch hbase-client passed checkstyle {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 9s{color} | {color:green} The patch hbase-server passed checkstyle {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 31s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 10m 7s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 57s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 7s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 22s{color} | {color:green} hbase-common in the patch passed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 57s{color} | {color:green} hbase-client in the patch passed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green}116m 6s{color} | {color:green} hbase-server in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 1m 2s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}172m 13s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:b002b0b | | JIRA Issue | HBASE-20886 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12932637/HBASE-20886.master.004.patch | | Optional Tests | asfl
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16552319#comment-16552319 ] Reid Chan commented on HBASE-20886: --- v4 tries to fix failed UTs > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch, > HBASE-20886.master.002.patch, HBASE-20886.master.003.patch, > HBASE-20886.master.004.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16550851#comment-16550851 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 10s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 22s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 44s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 47s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 2m 1s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 29s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 34s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 9s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 14s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 46s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 45s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 2m 45s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 23s{color} | {color:green} hbase-common: The patch generated 0 new + 7 unchanged - 1 fixed = 7 total (was 8) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 31s{color} | {color:green} The patch hbase-client passed checkstyle {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 9s{color} | {color:green} The patch hbase-server passed checkstyle {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 39s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 15m 24s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 9m 31s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 2m 57s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 4m 48s{color} | {color:green} hbase-common in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 5m 18s{color} | {color:red} hbase-client in the patch failed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red}152m 48s{color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 1m 4s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}226m 58s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.client.TestAsyncProcess | | | hadoop.hbase.replication.TestSyncReplicationRemoveRemoteWAL | | | hadoop.hbase.TestMetaTableAccessorNoCluster | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16548458#comment-16548458 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 16s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 3 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 1m 15s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 6m 43s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 45s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 46s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 17s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 30s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 8s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 14s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 34s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 45s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 2m 45s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 20s{color} | {color:green} hbase-common: The patch generated 0 new + 7 unchanged - 1 fixed = 7 total (was 8) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 27s{color} | {color:green} The patch hbase-client passed checkstyle {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 3s{color} | {color:green} The patch hbase-server passed checkstyle {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 12s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 9m 39s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 46s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 3s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 31s{color} | {color:green} hbase-common in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 2m 49s{color} | {color:red} hbase-client in the patch failed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red}199m 33s{color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 1m 0s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}256m 29s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.client.TestAsyncProcess | | | hadoop.hbase.client.TestConnectionImplementation | | | hadoop.hbase.TestMetaTableAccessorNoCluster | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetu
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544395#comment-16544395 ] Reid Chan commented on HBASE-20886: --- bq. documented it in the ref guide? i'm afraid not, but i plan to do that after this one resolved. bq. did this via AuthUtil Only in canary. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544344#comment-16544344 ] Sean Busbey commented on HBASE-20886: - I thought we did this via AuthUtil and documented it in the ref guide? > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544158#comment-16544158 ] Reid Chan commented on HBASE-20886: --- Got your point, if there's already login user, we can make use of the ugi instead of login again. I'll fix it in v2 patch. bq. hbase-client is a library... It only affects the connection where client-server authentic communication happen. This saying may be too big, i can change it. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544133#comment-16544133 ] Duo Zhang commented on HBASE-20886: --- Anyway, the problem here is that, if a user wants to connect to HBase, HDFS and YARN, if we have options for each of them, then we will login the UGI three times, which does not make sense... For canary it is OK because it is a service, but hbase-client is a library... > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544132#comment-16544132 ] Duo Zhang commented on HBASE-20886: --- Oh maybe we have done something in our internal code base, let me check the code again... > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544128#comment-16544128 ] Reid Chan commented on HBASE-20886: --- Those two options are already existed in code base. The canary implementation is a legacy, and client principal doesn't have to have hostname, so i add a new one. BTW, where are these configurations {{hadoop.property.hadoop.client.keytab.file}}, {{hadoop.property.hadoop.client.kerberos.principal}}. I'm afraid i have missed them.. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544126#comment-16544126 ] Reid Chan commented on HBASE-20886: --- A client using one principal to access many other services is normal. UserA reads HDFS then writes to HBASE with Spark, he is still UserA in no matter he accesses which process. HDFS (or YARN) principal is in DataNode or NodeManager process, a client principal will mess up with which? Do you mean he is UserA when reads HDFS, then as UserB to write HBase? > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544124#comment-16544124 ] Duo Zhang commented on HBASE-20886: --- My point here is that, we do not need to introduce the two options, just use 'hadoop.property.hadoop.client.keytab.file' and 'hadoop.property.hadoop.client.kerberos.principal'. When you call UGI.getLoginUser, it will use these configs to get the TGT. And I'm not sure why we use a different way in the canary implementation... > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544117#comment-16544117 ] Duo Zhang commented on HBASE-20886: --- The problem here is that, the UserGroupInformation is per process, if you also need to connect to HDFS, or YARN(typical usage for a MR job), then things will be messed up... > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544102#comment-16544102 ] Reid Chan commented on HBASE-20886: --- bq. I think the login is done by UserGroupInformation? Yes, the underlying implementation is {{UserGroupInformation}}. Just wrap it into connection creation and provide renew logic. This will eliminate trouble of hbase application, they only need to provide client keytab and principal. BTW, Zookeeper, Kafka, Flink, Spark, etc., open sources do the similar way by providing JAAS file or configurations, client application takes no care about how to login and when to renew, but just focus on business. > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544098#comment-16544098 ] Hadoop QA commented on HBASE-20886: --- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 30s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 1s{color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 3 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 28s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 38s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 48s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 55s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 21s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 38s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 8s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 16s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 38s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 2m 49s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 2m 49s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 22s{color} | {color:green} hbase-common: The patch generated 0 new + 7 unchanged - 1 fixed = 7 total (was 8) {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 30s{color} | {color:green} The patch hbase-client passed checkstyle {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 2s{color} | {color:green} The patch hbase-server passed checkstyle {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 4m 17s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 9m 48s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 4m 8s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 7s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 2m 42s{color} | {color:green} hbase-common in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 2m 59s{color} | {color:red} hbase-client in the patch failed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red} 24m 42s{color} | {color:red} hbase-server in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 38s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 80m 28s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hbase.client.TestAsyncProcess | | | hadoop.hbase.security.TestUsersOperationsWithSecureHadoop | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:b002b0b | | JIRA Issue | HBASE-2088
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544071#comment-16544071 ] Duo Zhang commented on HBASE-20886: --- I think the login is done by UserGroupInformation? > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > Attachments: HBASE-20886.master.001.patch > > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20886) [Auth] Support keytab login in hbase client
[ https://issues.apache.org/jira/browse/HBASE-20886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16544039#comment-16544039 ] Reid Chan commented on HBASE-20886: --- FYI [~elserj] > [Auth] Support keytab login in hbase client > --- > > Key: HBASE-20886 > URL: https://issues.apache.org/jira/browse/HBASE-20886 > Project: HBase > Issue Type: Improvement > Components: asyncclient, Client, security >Reporter: Reid Chan >Assignee: Reid Chan >Priority: Critical > > There're lots of questions about how to connect to kerberized hbase cluster > through hbase-client api from user-mail and slack channel. > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > already existed in code base, but they are only used in {{Canary}}. > This issue is to make use of two configs to support client-side keytab based > login, after this issue resolved, hbase-client should directly connect to > kerberized cluster without changing any code as long as > {{hbase.client.keytab.file}} and {{hbase.client.keytab.principal}} are > specified. -- This message was sent by Atlassian JIRA (v7.6.3#76005)