SENTRY-778: CredentialProvider for Sentry DB password ( Sravya Tirukkovalur, Reviewed by: Colin Ma)
Project: http://git-wip-us.apache.org/repos/asf/incubator-sentry/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-sentry/commit/7eb7c7da Tree: http://git-wip-us.apache.org/repos/asf/incubator-sentry/tree/7eb7c7da Diff: http://git-wip-us.apache.org/repos/asf/incubator-sentry/diff/7eb7c7da Branch: refs/heads/hive_plugin_v2 Commit: 7eb7c7dabd5ec6034d30872f001752cc64e643b4 Parents: 7c2da74 Author: Sravya Tirukkovalur <[email protected]> Authored: Fri Jul 17 11:18:18 2015 -0700 Committer: Sravya Tirukkovalur <[email protected]> Committed: Mon Jul 20 13:52:52 2015 -0700 ---------------------------------------------------------------------- .../service/persistent/DelegateSentryStore.java | 4 +++- .../db/service/persistent/SentryStore.java | 17 +++++++++++--- .../provider/db/tools/SentrySchemaTool.java | 17 ++++++++++---- .../sentry/service/thrift/ServiceConstants.java | 1 - .../persistent/SentryStoreIntegrationBase.java | 1 + .../db/service/persistent/TestSentryStore.java | 24 +++++++++++++++++++- .../service/persistent/TestSentryVersion.java | 1 + .../provider/db/tools/TestSentrySchemaTool.java | 2 ++ .../thrift/SentryServiceIntegrationBase.java | 1 + .../dbprovider/AbstractTestWithDbProvider.java | 1 + .../tests/e2e/hdfs/TestHDFSIntegration.java | 1 + .../AbstractTestWithStaticConfiguration.java | 1 + .../AbstractSolrSentryTestWithDbProvider.java | 1 + .../e2e/sqoop/AbstractSqoopSentryTestBase.java | 1 + 14 files changed, 63 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/generic/service/persistent/DelegateSentryStore.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/generic/service/persistent/DelegateSentryStore.java b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/generic/service/persistent/DelegateSentryStore.java index 6061ef2..0aab975 100644 --- a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/generic/service/persistent/DelegateSentryStore.java +++ b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/generic/service/persistent/DelegateSentryStore.java @@ -17,6 +17,7 @@ */ package org.apache.sentry.provider.db.generic.service.persistent; +import java.io.IOException; import java.util.Arrays; import java.util.HashSet; import java.util.LinkedList; @@ -39,6 +40,7 @@ import org.apache.sentry.provider.db.service.model.MSentryGroup; import org.apache.sentry.provider.db.service.model.MSentryRole; import org.apache.sentry.provider.db.service.persistent.CommitContext; import org.apache.sentry.provider.db.service.persistent.SentryStore; +import org.apache.sentry.provider.db.service.thrift.SentryConfigurationException; import org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessor; import org.apache.sentry.provider.db.service.thrift.TSentryGroup; import org.apache.sentry.provider.db.service.thrift.TSentryRole; @@ -65,7 +67,7 @@ public class DelegateSentryStore implements SentryStoreLayer { private PrivilegeOperatePersistence privilegeOperator; public DelegateSentryStore(Configuration conf) throws SentryNoSuchObjectException, - SentryAccessDeniedException { + SentryAccessDeniedException, SentryConfigurationException, IOException { this.privilegeOperator = new PrivilegeOperatePersistence(); // The generic model doesn't turn on the thread that cleans hive privileges conf.set(ServerConfig.SENTRY_STORE_ORPHANED_PRIVILEGE_REMOVAL,"false"); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/SentryStore.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/SentryStore.java b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/SentryStore.java index d7937d0..81adec2 100644 --- a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/SentryStore.java +++ b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/SentryStore.java @@ -21,6 +21,7 @@ package org.apache.sentry.provider.db.service.persistent; import static org.apache.sentry.provider.common.ProviderConstants.AUTHORIZABLE_JOINER; import static org.apache.sentry.provider.common.ProviderConstants.KV_JOINER; +import java.io.IOException; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; @@ -58,6 +59,7 @@ import org.apache.sentry.provider.db.service.model.MSentryGroup; import org.apache.sentry.provider.db.service.model.MSentryPrivilege; import org.apache.sentry.provider.db.service.model.MSentryRole; import org.apache.sentry.provider.db.service.model.MSentryVersion; +import org.apache.sentry.provider.db.service.thrift.SentryConfigurationException; import org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessor; import org.apache.sentry.provider.db.service.thrift.TSentryActiveRoleSet; import org.apache.sentry.provider.db.service.thrift.TSentryAuthorizable; @@ -120,7 +122,7 @@ public class SentryStore { private Thread privCleanerThread = null; public SentryStore(Configuration conf) throws SentryNoSuchObjectException, - SentryAccessDeniedException { + SentryAccessDeniedException, SentryConfigurationException, IOException { commitSequenceId = 0; this.conf = conf; Properties prop = new Properties(); @@ -130,8 +132,17 @@ public class SentryStore { ServerConfig.SENTRY_STORE_JDBC_URL + " missing"); String user = conf.get(ServerConfig.SENTRY_STORE_JDBC_USER, ServerConfig. SENTRY_STORE_JDBC_USER_DEFAULT).trim(); - String pass = conf.get(ServerConfig.SENTRY_STORE_JDBC_PASS, ServerConfig. - SENTRY_STORE_JDBC_PASS_DEFAULT).trim(); + //Password will be read from Credential provider specified using property + // CREDENTIAL_PROVIDER_PATH("hadoop.security.credential.provider.path" in sentry-site.xml + // it falls back to reading directly from sentry-site.xml + char[] passTmp = conf.getPassword(ServerConfig.SENTRY_STORE_JDBC_PASS); + String pass = null; + if(passTmp != null) { + pass = new String(passTmp); + } else { + throw new SentryConfigurationException("Error reading " + ServerConfig.SENTRY_STORE_JDBC_PASS); + } + String driverName = conf.get(ServerConfig.SENTRY_STORE_JDBC_DRIVER, ServerConfig.SENTRY_STORE_JDBC_DRIVER_DEFAULT); prop.setProperty(ServerConfig.JAVAX_JDO_URL, jdbcUrl); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/tools/SentrySchemaTool.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/tools/SentrySchemaTool.java b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/tools/SentrySchemaTool.java index 69086d2..11b2ed2 100644 --- a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/tools/SentrySchemaTool.java +++ b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/tools/SentrySchemaTool.java @@ -49,6 +49,7 @@ import org.apache.hive.beeline.BeeLine; import org.apache.sentry.Command; import org.apache.sentry.SentryUserException; import org.apache.sentry.provider.db.service.persistent.SentryStoreSchemaInfo; +import org.apache.sentry.provider.db.service.thrift.SentryConfigurationException; import org.apache.sentry.provider.db.tools.SentrySchemaHelper.NestedScriptParser; import org.apache.sentry.service.thrift.SentryService; import org.apache.sentry.service.thrift.ServiceConstants; @@ -68,12 +69,12 @@ public class SentrySchemaTool { private final SentryStoreSchemaInfo SentryStoreSchemaInfo; public SentrySchemaTool(Configuration sentryConf, String dbType) - throws SentryUserException { + throws SentryUserException, IOException { this(System.getenv("SENTRY_HOME") + SENTRY_SCRIP_DIR, sentryConf, dbType); } public SentrySchemaTool(String sentryScripPath, Configuration sentryConf, - String dbType) throws SentryUserException { + String dbType) throws SentryUserException, IOException { if (sentryScripPath == null || sentryScripPath.isEmpty()) { throw new SentryUserException("No Sentry script dir provided"); } @@ -83,8 +84,16 @@ public class SentrySchemaTool { dbType); userName = sentryConf.get(ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_USER, ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_USER_DEFAULT); - passWord = sentryConf.get(ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_PASS, - ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_PASS_DEFAULT); + //Password will be read from Credential provider specified using property + // CREDENTIAL_PROVIDER_PATH("hadoop.security.credential.provider.path" in sentry-site.xml + // it falls back to reading directly from sentry-site.xml + char[] passTmp = sentryConf.getPassword(ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_PASS); + if(passTmp != null) { + passWord = new String(passTmp); + } else { + throw new SentryConfigurationException("Error reading " + ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_PASS); + } + try { connectionURL = getValidConfVar(ServiceConstants.ServerConfig.SENTRY_STORE_JDBC_URL); if(dbType.equalsIgnoreCase(SentrySchemaHelper.DB_DERBY)) { http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/ServiceConstants.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/ServiceConstants.java b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/ServiceConstants.java index 0d775f1..835c3d0 100644 --- a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/ServiceConstants.java +++ b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/ServiceConstants.java @@ -83,7 +83,6 @@ public class ServiceConstants { public static final String SENTRY_STORE_JDBC_USER = "sentry.store.jdbc.user"; public static final String SENTRY_STORE_JDBC_USER_DEFAULT = "Sentry"; public static final String SENTRY_STORE_JDBC_PASS = "sentry.store.jdbc.password"; - public static final String SENTRY_STORE_JDBC_PASS_DEFAULT = "Sentry"; public static final String SENTRY_STORE_JDBC_DRIVER = "sentry.store.jdbc.driver"; public static final String SENTRY_STORE_JDBC_DRIVER_DEFAULT = "org.apache.derby.jdbc.EmbeddedDriver"; http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/generic/service/persistent/SentryStoreIntegrationBase.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/generic/service/persistent/SentryStoreIntegrationBase.java b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/generic/service/persistent/SentryStoreIntegrationBase.java index 7951022..915a929 100644 --- a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/generic/service/persistent/SentryStoreIntegrationBase.java +++ b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/generic/service/persistent/SentryStoreIntegrationBase.java @@ -49,6 +49,7 @@ public abstract class SentryStoreIntegrationBase { conf.set(ServerConfig.SENTRY_VERIFY_SCHEM_VERSION, "false"); conf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dataDir.getPath() + ";create=true"); + conf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); conf.setStrings(ServerConfig.ADMIN_GROUPS, adminGroups); conf.set(ServerConfig.SENTRY_STORE_GROUP_MAPPING, ServerConfig.SENTRY_STORE_LOCAL_GROUP_MAPPING); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryStore.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryStore.java b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryStore.java index 35319db..be19468 100644 --- a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryStore.java +++ b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryStore.java @@ -27,10 +27,14 @@ import java.io.File; import java.util.Arrays; import java.util.Collections; import java.util.HashSet; +import java.util.List; import java.util.Set; import org.apache.commons.io.FileUtils; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.security.alias.CredentialProvider; +import org.apache.hadoop.security.alias.CredentialProviderFactory; +import org.apache.hadoop.security.alias.UserProvider; import org.apache.sentry.core.model.db.AccessConstants; import org.apache.sentry.provider.db.SentryAlreadyExistsException; import org.apache.sentry.provider.db.SentryGrantDeniedException; @@ -46,6 +50,7 @@ import org.apache.sentry.provider.file.PolicyFile; import org.apache.sentry.service.thrift.ServiceConstants.ServerConfig; import org.junit.After; import org.junit.AfterClass; +import static org.junit.Assert.assertArrayEquals; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Ignore; @@ -63,14 +68,24 @@ public class TestSentryStore { private static PolicyFile policyFile; private static File policyFilePath; final long NUM_PRIVS = 60; // > SentryStore.PrivCleaner.NOTIFY_THRESHOLD + private static Configuration conf = null; + private static char[] passwd = new char[] { '1', '2', '3'}; @BeforeClass public static void setup() throws Exception { + conf = new Configuration(false); + final String ourUrl = UserProvider.SCHEME_NAME + ":///"; + conf.set(CredentialProviderFactory.CREDENTIAL_PROVIDER_PATH, ourUrl); + CredentialProvider provider = CredentialProviderFactory.getProviders(conf).get(0); + provider.createCredentialEntry(ServerConfig. + SENTRY_STORE_JDBC_PASS, passwd); + provider.flush(); + dataDir = new File(Files.createTempDir(), "sentry_policy_db"); - Configuration conf = new Configuration(false); conf.set(ServerConfig.SENTRY_VERIFY_SCHEM_VERSION, "false"); conf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dataDir.getPath() + ";create=true"); + conf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); conf.setStrings(ServerConfig.ADMIN_GROUPS, adminGroups); conf.set(ServerConfig.SENTRY_STORE_GROUP_MAPPING, ServerConfig.SENTRY_STORE_LOCAL_GROUP_MAPPING); @@ -102,6 +117,13 @@ public class TestSentryStore { FileUtils.deleteQuietly(dataDir); } } + + @Test + public void testCredentialProvider() throws Exception { + assertArrayEquals(passwd, conf.getPassword(ServerConfig. + SENTRY_STORE_JDBC_PASS)); + } + @Test public void testCaseInsensitiveRole() throws Exception { String roleName = "newRole"; http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryVersion.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryVersion.java b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryVersion.java index 0add58b..9c6597b 100644 --- a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryVersion.java +++ b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/persistent/TestSentryVersion.java @@ -41,6 +41,7 @@ public class TestSentryVersion { conf = new Configuration(false); conf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dataDir.getPath() + ";create=true"); + conf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); } /** http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/tools/TestSentrySchemaTool.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/tools/TestSentrySchemaTool.java b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/tools/TestSentrySchemaTool.java index 9a2dff8..cb62c13 100644 --- a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/tools/TestSentrySchemaTool.java +++ b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/tools/TestSentrySchemaTool.java @@ -41,6 +41,7 @@ public class TestSentrySchemaTool { File dbDir = new File(Files.createTempDir(), "sentry_policy_db"); sentryConf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dbDir.getPath() + ";create=true"); + sentryConf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); schemaTool = new SentrySchemaTool("./src/main/resources", sentryConf, "derby"); } @@ -50,6 +51,7 @@ public class TestSentrySchemaTool { File dbDir = new File(Files.createTempDir(), "sentry_policy_db"); sentryConf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dbDir.getPath() + ";create=true"); + sentryConf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); schemaTool = new SentrySchemaTool("./src/main/resources", sentryConf, "derby"); } http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/service/thrift/SentryServiceIntegrationBase.java ---------------------------------------------------------------------- diff --git a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/service/thrift/SentryServiceIntegrationBase.java b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/service/thrift/SentryServiceIntegrationBase.java index 2eea07b..6bc9f75 100644 --- a/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/service/thrift/SentryServiceIntegrationBase.java +++ b/sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/service/thrift/SentryServiceIntegrationBase.java @@ -197,6 +197,7 @@ public abstract class SentryServiceIntegrationBase extends SentryMiniKdcTestcase dbDir = new File(Files.createTempDir(), "sentry_policy_db"); conf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dbDir.getPath() + ";create=true"); + conf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); server = new SentryServiceFactory().create(conf); conf.set(ClientConfig.SERVER_RPC_ADDRESS, server.getAddress().getHostName()); conf.set(ClientConfig.SERVER_RPC_PORT, String.valueOf(server.getAddress().getPort())); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/dbprovider/AbstractTestWithDbProvider.java ---------------------------------------------------------------------- diff --git a/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/dbprovider/AbstractTestWithDbProvider.java b/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/dbprovider/AbstractTestWithDbProvider.java index 0c9feab..17a2d1e 100644 --- a/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/dbprovider/AbstractTestWithDbProvider.java +++ b/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/dbprovider/AbstractTestWithDbProvider.java @@ -80,6 +80,7 @@ public abstract class AbstractTestWithDbProvider extends AbstractTestWithHiveSer dbDir = new File(Files.createTempDir(), "sentry_policy_db"); properties.put(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dbDir.getPath() + ";create=true"); + properties.put(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); properties.put(ServerConfig.SENTRY_VERIFY_SCHEM_VERSION, "false"); properties.put(ServerConfig.SENTRY_STORE_GROUP_MAPPING, ServerConfig.SENTRY_STORE_LOCAL_GROUP_MAPPING); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hdfs/TestHDFSIntegration.java ---------------------------------------------------------------------- diff --git a/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hdfs/TestHDFSIntegration.java b/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hdfs/TestHDFSIntegration.java index 53d71d6..35a9213 100644 --- a/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hdfs/TestHDFSIntegration.java +++ b/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hdfs/TestHDFSIntegration.java @@ -444,6 +444,7 @@ public class TestHDFSIntegration { properties.put(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + baseDir.getPath() + "/sentrystore_db;create=true"); + properties.put(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); properties.put("sentry.service.processor.factories", "org.apache.sentry.provider.db.service.thrift.SentryPolicyStoreProcessorFactory,org.apache.sentry.hdfs.SentryHDFSServiceProcessorFactory"); properties.put("sentry.policy.store.plugins", "org.apache.sentry.hdfs.SentryPlugin"); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hive/AbstractTestWithStaticConfiguration.java ---------------------------------------------------------------------- diff --git a/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hive/AbstractTestWithStaticConfiguration.java b/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hive/AbstractTestWithStaticConfiguration.java index 3a8a6ef..e6c1e89 100644 --- a/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hive/AbstractTestWithStaticConfiguration.java +++ b/sentry-tests/sentry-tests-hive/src/test/java/org/apache/sentry/tests/e2e/hive/AbstractTestWithStaticConfiguration.java @@ -375,6 +375,7 @@ public abstract class AbstractTestWithStaticConfiguration { properties.put(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + baseDir.getPath() + "/sentrystore_db;create=true"); + properties.put(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); properties.put(ServerConfig.SENTRY_STORE_GROUP_MAPPING, ServerConfig.SENTRY_STORE_LOCAL_GROUP_MAPPING); properties.put(ServerConfig.SENTRY_STORE_GROUP_MAPPING_RESOURCE, policyFileLocation.getPath()); properties.put(ServerConfig.RPC_MIN_THREADS, "3"); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-tests/sentry-tests-solr/src/test/java/org/apache/sentry/tests/e2e/solr/db/integration/AbstractSolrSentryTestWithDbProvider.java ---------------------------------------------------------------------- diff --git a/sentry-tests/sentry-tests-solr/src/test/java/org/apache/sentry/tests/e2e/solr/db/integration/AbstractSolrSentryTestWithDbProvider.java b/sentry-tests/sentry-tests-solr/src/test/java/org/apache/sentry/tests/e2e/solr/db/integration/AbstractSolrSentryTestWithDbProvider.java index 9438ee5..247abd6 100644 --- a/sentry-tests/sentry-tests-solr/src/test/java/org/apache/sentry/tests/e2e/solr/db/integration/AbstractSolrSentryTestWithDbProvider.java +++ b/sentry-tests/sentry-tests-solr/src/test/java/org/apache/sentry/tests/e2e/solr/db/integration/AbstractSolrSentryTestWithDbProvider.java @@ -118,6 +118,7 @@ public class AbstractSolrSentryTestWithDbProvider extends AbstractSolrSentryTest conf.set(ServerConfig.RPC_PORT, String.valueOf(PORT)); conf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dbDir.getPath() + ";create=true"); + conf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); conf.set(ServerConfig.SENTRY_STORE_GROUP_MAPPING_RESOURCE, policyFilePath.getPath()); server = new SentryServiceFactory().create(conf); http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/7eb7c7da/sentry-tests/sentry-tests-sqoop/src/test/java/org/apache/sentry/tests/e2e/sqoop/AbstractSqoopSentryTestBase.java ---------------------------------------------------------------------- diff --git a/sentry-tests/sentry-tests-sqoop/src/test/java/org/apache/sentry/tests/e2e/sqoop/AbstractSqoopSentryTestBase.java b/sentry-tests/sentry-tests-sqoop/src/test/java/org/apache/sentry/tests/e2e/sqoop/AbstractSqoopSentryTestBase.java index 2c6f329..bb8ceb5 100644 --- a/sentry-tests/sentry-tests-sqoop/src/test/java/org/apache/sentry/tests/e2e/sqoop/AbstractSqoopSentryTestBase.java +++ b/sentry-tests/sentry-tests-sqoop/src/test/java/org/apache/sentry/tests/e2e/sqoop/AbstractSqoopSentryTestBase.java @@ -139,6 +139,7 @@ public class AbstractSqoopSentryTestBase { conf.set(ServerConfig.RPC_PORT, String.valueOf(PORT)); conf.set(ServerConfig.SENTRY_STORE_JDBC_URL, "jdbc:derby:;databaseName=" + dbDir.getPath() + ";create=true"); + conf.set(ServerConfig.SENTRY_STORE_JDBC_PASS, "dummy"); conf.set(ServerConfig.SENTRY_STORE_GROUP_MAPPING, ServerConfig.SENTRY_STORE_LOCAL_GROUP_MAPPING); conf.set(ServerConfig.SENTRY_STORE_GROUP_MAPPING_RESOURCE,
