You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2016/11/01 19:49:58 UTC

[34/50] [abbrv] hbase git commit: HBASE-16829 DemoClient should detect secure mode

HBASE-16829 DemoClient should detect secure mode


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9fda0dd0
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9fda0dd0
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9fda0dd0

Branch: refs/heads/branch-1
Commit: 9fda0dd09820de895313b9b06fc020e7f758c78f
Parents: 42e7a4a
Author: tedyu <yu...@gmail.com>
Authored: Fri Oct 21 16:36:50 2016 -0700
Committer: tedyu <yu...@gmail.com>
Committed: Fri Oct 21 16:36:50 2016 -0700

----------------------------------------------------------------------
 .../org/apache/hadoop/hbase/thrift2/DemoClient.java   | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/9fda0dd0/hbase-examples/src/main/java/org/apache/hadoop/hbase/thrift2/DemoClient.java
----------------------------------------------------------------------
diff --git a/hbase-examples/src/main/java/org/apache/hadoop/hbase/thrift2/DemoClient.java b/hbase-examples/src/main/java/org/apache/hadoop/hbase/thrift2/DemoClient.java
index 72c6929..e96688e 100644
--- a/hbase-examples/src/main/java/org/apache/hadoop/hbase/thrift2/DemoClient.java
+++ b/hbase-examples/src/main/java/org/apache/hadoop/hbase/thrift2/DemoClient.java
@@ -31,6 +31,8 @@ import javax.security.auth.login.Configuration;
 import javax.security.auth.login.LoginContext;
 import javax.security.sasl.Sasl;
 
+import org.apache.hadoop.hbase.HBaseConfiguration;
+
 import org.apache.hadoop.hbase.thrift2.generated.TColumnValue;
 import org.apache.hadoop.hbase.thrift2.generated.TGet;
 import org.apache.hadoop.hbase.thrift2.generated.THBaseService;
@@ -48,6 +50,7 @@ public class DemoClient {
   private static String host = "localhost";
   private static int port = 9090;
   private static boolean secure = false;
+  private static String user = null;
 
   public static void main(String[] args) throws Exception {
     System.out.println("Thrift2 Demo");
@@ -61,6 +64,15 @@ public class DemoClient {
     if (args.length >= 2) {
       port = Integer.parseInt(args[1]);
     }
+    org.apache.hadoop.conf.Configuration conf = HBaseConfiguration.create();
+    String principal = conf.get("hbase.thrift.kerberos.principal");
+    if (principal != null) {
+      secure = true;
+      int slashIdx = principal.indexOf("/");
+      int atIdx = principal.indexOf("@");
+      int idx = slashIdx != -1 ? slashIdx : atIdx != -1 ? atIdx : principal.length();
+      user = principal.substring(0, idx);
+    }
     if (args.length >= 3) {
       secure = Boolean.parseBoolean(args[2]);
     }
@@ -93,7 +105,7 @@ public class DemoClient {
       Map<String, String> saslProperties = new HashMap<String, String>();
       saslProperties.put(Sasl.QOP, "auth-conf,auth-int,auth");
       transport = new TSaslClientTransport("GSSAPI", null,
-        "hbase", // Thrift server user name, should be an authorized proxy user.
+        user != null ? user : "hbase",// Thrift server user name, should be an authorized proxy user
         host, // Thrift server domain
         saslProperties, null, transport);
     }