Skip to content

HBASE-26553 OAuth Bearer authentication mech plugin for SASL - #3934

Closed
anmolnar wants to merge 7 commits into
apache:masterfrom
anmolnar:HBASE-26553
Closed

HBASE-26553 OAuth Bearer authentication mech plugin for SASL#3934
anmolnar wants to merge 7 commits into
apache:masterfrom
anmolnar:HBASE-26553

Conversation

@anmolnar

Copy link
Copy Markdown
Contributor

Initial commit for JWT authentication.

Details are in the Jira: https://issues.apache.org/jira/browse/HBASE-26553

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 7sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗mvndep0m 27sMaven dependency ordering for branch
+1 💚mvninstall4m 57smaster passed
+1 💚compile10m 57smaster passed
+1 💚checkstyle2m 26smaster passed
+1 💚spotbugs19m 1smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 23sMaven dependency ordering for patch
+1 💚mvninstall4m 36sthe patch passed
+1 💚compile11m 4sthe patch passed
-0 ⚠️javac11m 4sroot generated 34 new + 1632 unchanged - 0 fixed = 1666 total (was 1632)
-0 ⚠️checkstyle2m 26sroot: The patch generated 12 new + 17 unchanged - 0 fixed = 29 total (was 17)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚xml0m 4sThe patch has no ill-formed XML file.
+1 💚hadoopcheck23m 50sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotbugs20m 25sthe patch passed
_ Other Tests _
+1 💚asflicense1m 17sThe patch does not generate ASF License warnings.
114m 26s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#3934
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile xml
unameLinux 4a0ed75e831f 4.15.0-163-generic #171-Ubuntu SMP Fri Nov 5 11:55:11 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / b5cf3cd
Default JavaAdoptOpenJDK-1.8.0_282-b08
javachttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-general-check/output/diff-compile-javac-root.txt
checkstylehttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-general-check/output/diff-checkstyle-root.txt
Max. process+thread count126 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 26sDocker mode activated.
-0 ⚠️yetus0m 4sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 27sMaven dependency ordering for branch
+1 💚mvninstall4m 40smaster passed
+1 💚compile3m 9smaster passed
+1 💚shadedjars8m 11sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 56smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall4m 23sthe patch passed
+1 💚compile3m 9sthe patch passed
+1 💚javac3m 9sthe patch passed
+1 💚shadedjars8m 22spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 24shbase-common generated 1 new + 12 unchanged - 0 fixed = 13 total (was 12)
-0 ⚠️javadoc2m 49sroot generated 1 new + 171 unchanged - 0 fixed = 172 total (was 171)
_ Other Tests _
+1 💚unit186m 15sroot in the patch passed.
233m 34s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux d3f2cba9fdbd 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / b5cf3cd
Default JavaAdoptOpenJDK-11.0.10+9
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk11-hadoop3-check/output/diff-javadoc-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk11-hadoop3-check/output/diff-javadoc-javadoc-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/testReport/
Max. process+thread count7242 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 27sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 25sMaven dependency ordering for branch
+1 💚mvninstall4m 7smaster passed
+1 💚compile2m 49smaster passed
+1 💚shadedjars8m 23sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 6smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 23sMaven dependency ordering for patch
+1 💚mvninstall3m 49sthe patch passed
+1 💚compile2m 47sthe patch passed
+1 💚javac2m 47sthe patch passed
+1 💚shadedjars8m 18spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 22shbase-common generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0)
-0 ⚠️javadoc2m 14sroot generated 2 new + 54 unchanged - 0 fixed = 56 total (was 54)
_ Other Tests _
-1 ❌unit285m 45sroot in the patch failed.
328m 37s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 48f73397b479 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / b5cf3cd
Default JavaAdoptOpenJDK-1.8.0_282-b08
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-root.txt
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/testReport/
Max. process+thread count4488 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/1/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@taklwutaklwu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sorry that I didn't give much comment on the JWT integration, I will come back on after another review.

at the same time, can you fix those javac, javadoc, and checkstyle -0 ?

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec4m 1sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 1sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗mvndep0m 17sMaven dependency ordering for branch
+1 💚mvninstall4m 2smaster passed
+1 💚compile9m 1smaster passed
+1 💚checkstyle2m 0smaster passed
+1 💚spotbugs14m 41smaster passed
-0 ⚠️patch2m 52sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall3m 52sthe patch passed
+1 💚compile9m 0sthe patch passed
-0 ⚠️javac9m 0sroot generated 11 new + 1628 unchanged - 0 fixed = 1639 total (was 1628)
-0 ⚠️checkstyle2m 0sroot: The patch generated 2 new + 17 unchanged - 0 fixed = 19 total (was 17)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚xml0m 3sThe patch has no ill-formed XML file.
+1 💚hadoopcheck19m 48sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotbugs15m 57sthe patch passed
_ Other Tests _
+1 💚asflicense1m 22sThe patch does not generate ASF License warnings.
96m 11s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#3934
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile xml
unameLinux 190f6f2c74a8 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / e96df8b
Default JavaAdoptOpenJDK-1.8.0_282-b08
javachttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-general-check/output/diff-compile-javac-root.txt
checkstylehttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-general-check/output/diff-checkstyle-root.txt
Max. process+thread count141 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 30sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 27sMaven dependency ordering for branch
+1 💚mvninstall5m 42smaster passed
+1 💚compile3m 48smaster passed
+1 💚shadedjars9m 6sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 58smaster passed
-0 ⚠️patch14m 57sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall4m 27sthe patch passed
+1 💚compile3m 14sthe patch passed
+1 💚javac3m 14sthe patch passed
+1 💚shadedjars8m 13spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 59sthe patch passed
_ Other Tests _
+1 💚unit190m 50sroot in the patch passed.
240m 49s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux e4a26493b416 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / e96df8b
Default JavaAdoptOpenJDK-11.0.10+9
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/testReport/
Max. process+thread count7037 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 51sDocker mode activated.
-0 ⚠️yetus0m 6sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 47sMaven dependency ordering for branch
+1 💚mvninstall4m 40smaster passed
+1 💚compile3m 7smaster passed
+1 💚shadedjars9m 33sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 22smaster passed
-0 ⚠️patch14m 40sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 21sMaven dependency ordering for patch
+1 💚mvninstall4m 32sthe patch passed
+1 💚compile3m 3sthe patch passed
+1 💚javac3m 3sthe patch passed
+1 💚shadedjars9m 8spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 21shbase-common generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
-0 ⚠️javadoc2m 47sroot generated 1 new + 57 unchanged - 0 fixed = 58 total (was 57)
_ Other Tests _
-1 ❌unit447m 52sroot in the patch failed.
497m 1s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 02f8d6c7992b 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / e96df8b
Default JavaAdoptOpenJDK-1.8.0_282-b08
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-root.txt
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/testReport/
Max. process+thread count4412 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/4/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 19sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗mvndep0m 26sMaven dependency ordering for branch
+1 💚mvninstall4m 6smaster passed
+1 💚compile9m 7smaster passed
+1 💚checkstyle1m 59smaster passed
+1 💚spotbugs14m 42smaster passed
-0 ⚠️patch2m 55sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall3m 50sthe patch passed
+1 💚compile9m 7sthe patch passed
-0 ⚠️javac9m 7sroot generated 3 new + 1628 unchanged - 0 fixed = 1631 total (was 1628)
+1 💚checkstyle2m 1sthe patch passed
+1 💚whitespace0m 1sThe patch has no whitespace issues.
+1 💚xml0m 3sThe patch has no ill-formed XML file.
+1 💚hadoopcheck19m 50sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotbugs15m 57sthe patch passed
_ Other Tests _
+1 💚asflicense1m 23sThe patch does not generate ASF License warnings.
94m 12s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#3934
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile xml
unameLinux c6c6a188993e 4.15.0-156-generic #163-Ubuntu SMP Thu Aug 19 23:31:58 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 70cb9b0
Default JavaAdoptOpenJDK-1.8.0_282-b08
javachttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-general-check/output/diff-compile-javac-root.txt
Max. process+thread count141 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@taklwutaklwu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, please add the @ClassRule/CLASS_RULE and @Category annotations for new test classes, rerun the tests or see if the failures are related

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 25sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 24sMaven dependency ordering for branch
+1 💚mvninstall4m 27smaster passed
+1 💚compile3m 12smaster passed
+1 💚shadedjars8m 26sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 57smaster passed
-0 ⚠️patch14m 26sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 21sMaven dependency ordering for patch
+1 💚mvninstall4m 28sthe patch passed
+1 💚compile3m 16sthe patch passed
+1 💚javac3m 16sthe patch passed
+1 💚shadedjars8m 19spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc5m 0sthe patch passed
_ Other Tests _
+1 💚unit194m 42sroot in the patch passed.
242m 52s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux ae9d3a0d81b7 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 70cb9b0
Default JavaAdoptOpenJDK-11.0.10+9
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/testReport/
Max. process+thread count6963 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 7sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 21sMaven dependency ordering for branch
+1 💚mvninstall4m 21smaster passed
+1 💚compile3m 0smaster passed
+1 💚shadedjars9m 4sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 7smaster passed
-0 ⚠️patch14m 0sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 19sMaven dependency ordering for patch
+1 💚mvninstall4m 19sthe patch passed
+1 💚compile3m 2sthe patch passed
+1 💚javac3m 2sthe patch passed
+1 💚shadedjars9m 8spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 20shbase-common generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
-0 ⚠️javadoc2m 18sroot generated 1 new + 57 unchanged - 0 fixed = 58 total (was 57)
_ Other Tests _
-1 ❌unit427m 24sroot in the patch failed.
473m 36s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux be5b43feb684 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 70cb9b0
Default JavaAdoptOpenJDK-1.8.0_282-b08
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-root.txt
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/testReport/
Max. process+thread count4502 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/5/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@joshelserjoshelser left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WIP review but wanted to get this out.

OAuthBearerTokenCallback callback = new OAuthBearerTokenCallback();
handler.handle(new Callback[] {callback});
assertEquals(num, callback.token().lifetimeMs());
}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice to then add a new PrivateCredential with a lesser lifetimeMs, just to make sure that the sorting is working properly (since you test the life times generated in sorted order, 1, 2, 3, 4).

* is used to connect to a SASL endpoint.
*/
@InterfaceAudience.Public
public class IllegalSaslStateException extends IllegalStateException {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We typically use the DoNotRetryIOException through the public API to indicate an operation (especially those which might come from a Master/RegionServer) should not be intrinsically retried. Since this is a RuntimeException, it might be treated as something that is non-retriable already.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see 2 problems with that:

  1. DoNotRetryIOException is in hbase-client module and cannot be used in hbase-common
  2. It's not a RuntimeException so cannot be replaced easily.

Though this exception is only used at one place in the PR, so I'm happy with any suggestion to get rid of that.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's thrown here.
The overriden method must throw SaslException, so we don't have to many options.

/*
* Callback handler for SASL-based authentication
*/
@InterfaceAudience.Public

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Users would not be implementing this directly, would they? I think good to start this off as "Private"

Comment threadhbase-common/pom.xml Outdated
Comment on lines +147 to +161
@Override
public byte[] unwrap(byte[] incoming, int offset, int len) {
if (!complete) {
throw new IllegalStateException("Authentication exchange has not completed");
}
return Arrays.copyOfRange(incoming, offset, offset + len);
}

@Override
public byte[] wrap(byte[] outgoing, int offset, int len) {
if (!complete) {
throw new IllegalStateException("Authentication exchange has not completed");
}
return Arrays.copyOfRange(outgoing, offset, offset + len);
}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought SASL had some extra header on the data packet which unwrap and wrap were handling. Maybe it's only important when we have SASL QOP set to integrity or confidentiality? With the bearer token approach we'll have to make sure that the data on the wire is encrypted.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 3sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 1sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 1sThe patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗mvndep0m 26sMaven dependency ordering for branch
+1 💚mvninstall4m 4smaster passed
+1 💚compile9m 1smaster passed
+1 💚checkstyle2m 0smaster passed
+1 💚spotbugs14m 52smaster passed
-0 ⚠️patch2m 52sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 23sMaven dependency ordering for patch
+1 💚mvninstall3m 51sthe patch passed
+1 💚compile8m 57sthe patch passed
-0 ⚠️javac8m 57sroot generated 3 new + 1628 unchanged - 0 fixed = 1631 total (was 1628)
+1 💚checkstyle1m 57sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚xml0m 2sThe patch has no ill-formed XML file.
+1 💚hadoopcheck19m 28sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotbugs15m 47sthe patch passed
_ Other Tests _
+1 💚asflicense1m 23sThe patch does not generate ASF License warnings.
92m 58s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#3934
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile xml
unameLinux a8ee68066013 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / baeb51f
Default JavaAdoptOpenJDK-1.8.0_282-b08
javachttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/artifact/yetus-general-check/output/diff-compile-javac-root.txt
Max. process+thread count141 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 26sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 36sMaven dependency ordering for branch
+1 💚mvninstall4m 32smaster passed
+1 💚compile3m 13smaster passed
+1 💚shadedjars8m 19sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 56smaster passed
-0 ⚠️patch14m 18sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 21sMaven dependency ordering for patch
+1 💚mvninstall4m 27sthe patch passed
+1 💚compile3m 15sthe patch passed
+1 💚javac3m 15sthe patch passed
+1 💚shadedjars8m 13spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 56sthe patch passed
_ Other Tests _
+1 💚unit191m 38sroot in the patch passed.
239m 12s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 3c7f2bd4a469 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / baeb51f
Default JavaAdoptOpenJDK-11.0.10+9
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/testReport/
Max. process+thread count7035 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@joshelserjoshelser left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lots of content here. I'm trying to unpack it all :)

  1. There's a lot of code around the SaslExtensions and the related Callbacks, but I'm struggling to understand if there's a good reason for us to keep these around. Are they just something that was in the Kafka implementation or are they critical to basic authentication via JWT working?
  2. I know that you mentioned in the Jira issue that you were leveraging Knox as the authorization server. I think it would go a very long way if we could provide a relatively simple authorization server such that other developers could try this out locally. I'm not seeing anything simple that nimbus-jose-jwt includes (but maybe it wouldn't be bad to just support Knox in a simple mode?)
  3. There's some checks you have around NO_PLAINTEXT sasl options. My understanding is that, for JWT based authentication to be secure (not subject to replay attacks), we need to have an encrypted channel (no plain text on the wire). Traditionally, we enabled wire encryption for HBase with SASL+GSSAPI/Kerberos by setting hbase.rpc.protection=privacy (which sets the SASL qop to be auth-conf). However, I believe this encryption depends on GSSAPI as the mechanism and would not be effective for this OAuthBearer solution. We also have commons-crypto based encryption as described in https://issues.apache.org/jira/browse/HBASE-16414. If this wire encryption works, I think we should just require it to be on to use the OauthBearer provider.

}

public static String[] mechanismNamesCompatibleWithPolicy(Map<String, ?> props) {
return props != null && "true".equals(String.valueOf(props.get(Sasl.POLICY_NOPLAINTEXT)))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Boolean.valueOf(String.valueOf(props.get(Sasl.POLICY_NOPLAINTEXT))) is a little more succient.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm also tryign to make sure I understand this check -- if we disallow plaintext mechanism, we also disallow oauth bearer mechanism?

In the context of HBase, would we ever want to allow the user to run HBase with oauth-bearer authentication without wire encryption? For a production scenario, I think the answer would be "no".

private String errorMessage = null;
private SaslExtensions extensions;

public OAuthBearerSaslServer(CallbackHandler callbackHandler) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it might be better to fail hard (throw exception) if we try to construct the SaslServer in an inherently insecure manner. Then we could get rid of all of the indirection in this class about compatibility with mechanism/policy.


private JWTClaimsSet claims;
private long lifetime;
private int maxClockSkewSeconds = 0;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the value of 0 disabling the clock skew validation?

* @param jwkSet
* the key set which the signature of this JWT should be verified with
*/
public OAuthBearerSignedJwt(String compactSerialization, JWKSet jwkSet) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unless there's a reason, could we construct this via one constructor with all of the options or make a Builder class? (which could automatically validate when we construct the Token)

*/
@Test
public void testBuildClientResponseToBytes() throws Exception {
String expectedMesssage = "n,,\u0001auth=Bearer 123.345.567\u0001nineteen=42\u0001\u0001";

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the \u0001 characters in here from the serialization done in OAuthBearerStringUtils? Would be nice to use the corresponding API to generate this String.


import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: In general, try to avoid making changes to unrelated files.

Comment threadpom.xml Outdated
@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 12sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 36sMaven dependency ordering for branch
+1 💚mvninstall4m 41smaster passed
+1 💚compile3m 39smaster passed
+1 💚shadedjars10m 27sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 57smaster passed
-0 ⚠️patch16m 17sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall4m 55sthe patch passed
+1 💚compile3m 24sthe patch passed
+1 💚javac3m 24sthe patch passed
+1 💚shadedjars10m 44spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 26shbase-common generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
-0 ⚠️javadoc3m 2sroot generated 1 new + 57 unchanged - 0 fixed = 58 total (was 57)
_ Other Tests _
+1 💚unit446m 4sroot in the patch passed.
499m 10s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux f6b45885180d 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / baeb51f
Default JavaAdoptOpenJDK-1.8.0_282-b08
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/testReport/
Max. process+thread count4510 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/6/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 26sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 1sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗mvndep0m 33sMaven dependency ordering for branch
+1 💚mvninstall4m 26smaster passed
+1 💚compile10m 5smaster passed
+1 💚checkstyle2m 22smaster passed
+1 💚spotbugs18m 1smaster passed
-0 ⚠️patch13m 33sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall4m 20sthe patch passed
+1 💚compile11m 18sthe patch passed
-0 ⚠️javac11m 18sroot generated 1 new + 1628 unchanged - 0 fixed = 1629 total (was 1628)
+1 💚checkstyle2m 57sroot: The patch generated 0 new + 17 unchanged - 1 fixed = 17 total (was 18)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚xml0m 3sThe patch has no ill-formed XML file.
+1 💚hadoopcheck25m 52sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotbugs22m 43sthe patch passed
_ Other Tests _
+1 💚asflicense1m 13sThe patch does not generate ASF License warnings.
118m 21s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#3934
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile xml
unameLinux a1e770168d8c 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 7972b2e
Default JavaAdoptOpenJDK-1.8.0_282-b08
javachttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-general-check/output/diff-compile-javac-root.txt
Max. process+thread count126 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 28sDocker mode activated.
-0 ⚠️yetus0m 4sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 26sMaven dependency ordering for branch
+1 💚mvninstall4m 56smaster passed
+1 💚compile3m 18smaster passed
+1 💚shadedjars8m 32sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc5m 24smaster passed
-0 ⚠️patch14m 43sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 21sMaven dependency ordering for patch
+1 💚mvninstall4m 36sthe patch passed
+1 💚compile3m 16sthe patch passed
+1 💚javac3m 16sthe patch passed
+1 💚shadedjars8m 50spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc5m 54sthe patch passed
_ Other Tests _
-1 ❌unit172m 14sroot in the patch failed.
221m 11s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux cc204cba9dc5 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 7972b2e
Default JavaAdoptOpenJDK-11.0.10+9
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/testReport/
Max. process+thread count3785 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 29sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 25sMaven dependency ordering for branch
+1 💚mvninstall4m 13smaster passed
+1 💚compile2m 47smaster passed
+1 💚shadedjars8m 21sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc4m 16smaster passed
-0 ⚠️patch13m 25sUsed diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗mvndep0m 23sMaven dependency ordering for patch
+1 💚mvninstall4m 6sthe patch passed
+1 💚compile2m 44sthe patch passed
+1 💚javac2m 44sthe patch passed
+1 💚shadedjars8m 25spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 21shbase-common generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
-0 ⚠️javadoc2m 13sroot generated 1 new + 57 unchanged - 0 fixed = 58 total (was 57)
_ Other Tests _
-1 ❌unit382m 56sroot in the patch failed.
426m 34s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#3934
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 4df5c30cde57 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 7972b2e
Default JavaAdoptOpenJDK-1.8.0_282-b08
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-root.txt
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-root.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/testReport/
Max. process+thread count5178 (vs. ulimit of 30000)
modulesC: hbase-common hbase-client hbase-resource-bundle hbase-server hbase-examples . U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3934/7/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@joshelser

Copy link
Copy Markdown
Member

Alright! I was actually able to test this out today using Knox. I think there are a couple of high level things we need to figure out

  • HBase clients will expect that renewals transparently happen. Either, we need a renewer thread in hbase to get a new bearer token before it expires (I think this is possible, but we'd have to know where to get the new one from). Otherwise, we'd have to think about usign the bearer token to get an hbase delegation token (which seems like too many tokens, tbh)
  • How will users provide the bearer token into their HBase client? Environment variable? Well-known file?
  • I tried enabling the RPC encryption from HBASE-16414 but regrettably can still see plaintext data going over the wire. Maybe that's just a bug in this patch, or maybe it's a bigger HBase SASL issue. Either way, we need encryption if we enable this auth'n feature.
  • I would like to see a standalone (no external service dependency) test included in hbase-examples, rather than just a client. However, I don't know of a JWT-providing server we could easily embedded into a test. Maybe knox could do this, or maybe nimbus has some testing server?
  • Need to get some additions to the hbase book.

Now, given how big this patch is already, I think I'd suggest we work through these on a feature branch rather than try to do them in a single commit. WDYT, Andor? I think this approach would let us do some iteration more easily.

@anmolnar
anmolnar deleted the HBASE-26553 branch January 10, 2022 13:07
@anmolnar

Copy link
Copy Markdown
ContributorAuthor

Closing this PR due to feature branch request.

@anmolnar

anmolnar commented Jan 10, 2022

Copy link
Copy Markdown
ContributorAuthor

Follow-up PR #4019

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@anmolnar@Apache-HBase@joshelser@taklwu@meszibalu