You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by Prasad Mujumdar <pr...@cloudera.com> on 2014/03/05 23:55:43 UTC
Review Request 18814: HIVE-6558: HiveServer2 Plain SASL authentication
broken after hadoop 2.3 upgrade
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18814/
-----------------------------------------------------------
Review request for hive and Thejas Nair.
Bugs: HIVE-6558
https://issues.apache.org/jira/browse/HIVE-6558
Repository: hive-git
Description
-------
Java only includes Plain SASL client and not server. Hence HiveServer2 includes a Plain SASL server implementation. Now Hadoop has its own Plain SASL server HADOOP-9020 which is part of Hadoop 2.3 release. The two servers use different Sasl callbacks and the servers are registered in java.security.Provider via static code. As a result the HiveServer2 instance could be using Hadoop's Plain SASL server which breaks the authentication.
The patch aligns the hive's plain sasl callbacks same as hadoop. This ensures that the Plain SASL auth works with either server. Once the Hadoop implementation is backported to 1.x codebase (HADOOP-9083: Port HADOOP-9020 Add a SASL PLAIN server to branch 1), then we can get rid or Hive's implementation and switch to hadoop.
Diffs
-----
itests/hive-unit/pom.xml 7ec6533
itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcWithMiniMr.java PRE-CREATION
itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/AbstractHiveService.java e320434
itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/MiniHS2.java 5f6834d
pom.xml e30fcc9
service/src/java/org/apache/hive/service/auth/PlainSaslHelper.java 15b1675
service/src/java/org/apache/hive/service/auth/PlainSaslServer.java d7f1e31
Diff: https://reviews.apache.org/r/18814/diff/
Testing
-------
Added mini MR support for MiniHS2 framework. Patch includes a new test TestJdbcWithMiniMR that run HS2 on top of miniMR and miniDFS clusters.
Verifies that the test fails without the patch for hadoop2 and passes with the patch for both hadoop-1 and hadoop-2.
Thanks,
Prasad Mujumdar