You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by el...@apache.org on 2016/08/02 22:40:38 UTC
[1/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Repository: phoenix
Updated Branches:
refs/heads/4.8-HBase-0.98 56318fb0d -> 38c55115c
refs/heads/4.8-HBase-1.0 b5261c23c -> 81ffc484e
refs/heads/4.8-HBase-1.1 a14b977da -> f792b6e96
refs/heads/4.8-HBase-1.2 8786a3d4a -> 5b5f0c91e
refs/heads/4.x-HBase-0.98 15219d0fa -> 845a5ac7a
refs/heads/4.x-HBase-1.0 971426372 -> af4fb4483
refs/heads/4.x-HBase-1.1 c9e3d7d3d -> 32c8c7262
refs/heads/master 545cc1c02 -> a9ea8a3ba
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/a9ea8a3b
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/a9ea8a3b
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/a9ea8a3b
Branch: refs/heads/master
Commit: a9ea8a3baa32714a1640c1197609910863daca79
Parents: 545cc1c
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:23:37 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/a9ea8a3b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[2/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/32c8c726
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/32c8c726
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/32c8c726
Branch: refs/heads/4.x-HBase-1.1
Commit: 32c8c7262c9337b54dcc5bc401c2fd24c9f42586
Parents: c9e3d7d
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:23:55 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/32c8c726/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[5/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/5b5f0c91
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/5b5f0c91
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/5b5f0c91
Branch: refs/heads/4.8-HBase-1.2
Commit: 5b5f0c91eac0b5f8e631ede8b12eb2e14dc4b0eb
Parents: 8786a3d
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:24:24 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/5b5f0c91/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[6/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/f792b6e9
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/f792b6e9
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/f792b6e9
Branch: refs/heads/4.8-HBase-1.1
Commit: f792b6e961e3d830f30110911517c59b3469798a
Parents: a14b977
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:24:31 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/f792b6e9/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[3/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/af4fb448
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/af4fb448
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/af4fb448
Branch: refs/heads/4.x-HBase-1.0
Commit: af4fb44834e4add5c16fee5525491dbc98277f1f
Parents: 9714263
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:24:04 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/af4fb448/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[4/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/845a5ac7
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/845a5ac7
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/845a5ac7
Branch: refs/heads/4.x-HBase-0.98
Commit: 845a5ac7a021eaa830a7f0b616bb8dd2179c62ee
Parents: 15219d0
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:24:12 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/845a5ac7/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[7/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/81ffc484
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/81ffc484
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/81ffc484
Branch: refs/heads/4.8-HBase-1.0
Commit: 81ffc484e016328e0b62109de08778920b18cc20
Parents: b5261c2
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:29:11 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/81ffc484/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;
[8/8] phoenix git commit: PHOENIX-3126 Tie a driver instance to a
specific user (Prabhjyot Singh)
Posted by el...@apache.org.
PHOENIX-3126 Tie a driver instance to a specific user (Prabhjyot Singh)
Prevent the case where a user's Kerberos credentials are
unintentionally used by a different user.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/38c55115
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/38c55115
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/38c55115
Branch: refs/heads/4.8-HBase-0.98
Commit: 38c55115cba1949161c37060d0e0be22863c6bc7
Parents: 56318fb
Author: Josh Elser <el...@apache.org>
Authored: Tue Aug 2 16:56:34 2016 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Tue Aug 2 18:34:26 2016 -0400
----------------------------------------------------------------------
.../apache/phoenix/jdbc/PhoenixEmbeddedDriver.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/38c55115/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
index d2dd94f..375388a 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixEmbeddedDriver.java
@@ -19,6 +19,7 @@ package org.apache.phoenix.jdbc;
import static org.apache.phoenix.util.PhoenixRuntime.PHOENIX_TEST_DRIVER_URL_PARAM;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
@@ -35,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HConstants;
+import org.apache.hadoop.hbase.security.User;
import org.apache.phoenix.coprocessor.MetaDataProtocol;
import org.apache.phoenix.exception.SQLExceptionCode;
import org.apache.phoenix.exception.SQLExceptionInfo;
@@ -340,6 +342,7 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
private final boolean isConnectionless;
private final String principal;
private final String keytab;
+ private final User user;
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode, String principal, String keytab) {
this.zookeeperQuorum = zookeeperQuorum;
@@ -348,6 +351,14 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
this.isConnectionless = PhoenixRuntime.CONNECTIONLESS.equals(zookeeperQuorum);
this.principal = principal;
this.keytab = keytab;
+ try {
+ this.user = User.getCurrent();
+ } catch (IOException e) {
+ throw new RuntimeException("Couldn't get the current user!!");
+ }
+ if (null == this.user) {
+ throw new RuntimeException("Acquired null user which should never happen");
+ }
}
public ConnectionInfo(String zookeeperQuorum, Integer port, String rootNode) {
@@ -406,6 +417,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
result = prime * result + ((rootNode == null) ? 0 : rootNode.hashCode());
result = prime * result + ((principal == null) ? 0 : principal.hashCode());
result = prime * result + ((keytab == null) ? 0 : keytab.hashCode());
+ // `user` is guaranteed to be non-null
+ result = prime * result + user.hashCode();
return result;
}
@@ -415,6 +428,8 @@ public abstract class PhoenixEmbeddedDriver implements Driver, SQLCloseable {
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
ConnectionInfo other = (ConnectionInfo) obj;
+ // `user` is guaranteed to be non-null
+ if (!other.user.equals(user)) return false;
if (zookeeperQuorum == null) {
if (other.zookeeperQuorum != null) return false;
} else if (!zookeeperQuorum.equals(other.zookeeperQuorum)) return false;