You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ga...@apache.org on 2016/04/01 15:21:24 UTC

ambari git commit: AMBARI-15628. Ranger: update code for jdbc according to new logic(Mugdha Varadkar)

Repository: ambari
Updated Branches:
  refs/heads/trunk a6d89bede -> dc4186f50


AMBARI-15628. Ranger: update code for jdbc according to new logic(Mugdha Varadkar)


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

Branch: refs/heads/trunk
Commit: dc4186f50cd1cbe1186014be13a815768061922f
Parents: a6d89be
Author: Gautam Borad <ga...@apache.org>
Authored: Fri Apr 1 18:20:08 2016 +0530
Committer: Gautam Borad <ga...@apache.org>
Committed: Fri Apr 1 18:50:55 2016 +0530

----------------------------------------------------------------------
 .../0.96.0.2.0/package/scripts/params_linux.py  | 19 ++++-----
 .../2.1.0.2.0/package/scripts/params_linux.py   | 20 ++++------
 .../0.12.0.2.0/package/scripts/params_linux.py  | 19 ++++-----
 .../KAFKA/0.8.1.2.2/package/scripts/params.py   | 18 +++------
 .../0.5.0.2.2/package/scripts/params_linux.py   | 19 ++++-----
 .../0.4.0/configuration/admin-properties.xml    |  2 +-
 .../RANGER/0.4.0/package/scripts/params.py      | 21 +++++-----
 .../0.4.0/package/scripts/setup_ranger.py       |  4 ++
 .../0.4.0/package/scripts/setup_ranger_xml.py   | 26 +++++-------
 .../0.5.0.2.3/configuration/kms-properties.xml  |  2 +-
 .../RANGER_KMS/0.5.0.2.3/package/scripts/kms.py | 29 ++++++--------
 .../0.5.0.2.3/package/scripts/params.py         | 42 ++++++++------------
 .../0.9.1.2.1/package/scripts/params_linux.py   | 19 ++++-----
 .../2.1.0.2.0/package/scripts/params_linux.py   | 18 +++------
 .../stacks/HDP/2.0.6/services/stack_advisor.py  | 12 ------
 .../stacks/HDP/2.3/services/stack_advisor.py    | 10 -----
 .../stacks/2.0.6/common/test_stack_advisor.py   |  9 ++---
 .../stacks/2.2/RANGER/test_ranger_admin.py      | 10 ++++-
 .../2.2/configs/ranger-admin-default.json       |  7 +++-
 .../2.2/configs/ranger-admin-secured.json       |  7 +++-
 .../2.2/configs/ranger-admin-upgrade.json       |  7 +++-
 .../stacks/2.3/common/test_stack_advisor.py     |  3 +-
 22 files changed, 132 insertions(+), 191 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
index 31e1757..c66a0e9 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
@@ -253,7 +253,6 @@ ambari_server_hostname = config['clusterHostInfo']['ambari_server_host'][0]
 
 # ranger hbase properties
 policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
 xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
 xa_audit_db_user = config['configurations']['admin-properties']['audit_db_user']
 xa_db_host = config['configurations']['admin-properties']['db_host']
@@ -284,13 +283,11 @@ if has_ranger_admin:
   xa_audit_db_flavor = (config['configurations']['admin-properties']['DB_FLAVOR']).lower()
 
   if xa_audit_db_flavor == 'mysql':
-    jdbc_symlink_name = "mysql-jdbc-driver.jar"
-    jdbc_jar_name = "mysql-connector-java.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor == 'oracle':
-    jdbc_jar_name = "ojdbc6.jar"
-    jdbc_symlink_name = "oracle-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -298,24 +295,22 @@ if has_ranger_admin:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor == 'postgres':
-    jdbc_jar_name = "postgresql.jar"
-    jdbc_symlink_name = "postgres-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor == 'mssql':
-    jdbc_jar_name = "sqljdbc4.jar"
-    jdbc_symlink_name = "mssql-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor == 'sqla':
-    jdbc_jar_name = "sajdbc4.jar"
-    jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+    jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
   downloaded_custom_connector = format("{exec_tmp_dir}/{jdbc_jar_name}")
-  driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+  driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
   driver_curl_target = format("{stack_root}/current/{component_directory}/lib/{jdbc_jar_name}")
+  sql_connector_jar = ''
 
   hbase_ranger_plugin_config = {
     'username': repo_config_username,

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
index 6725be5..6949ced 100644
--- a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
@@ -386,7 +386,6 @@ ambari_server_hostname = config['clusterHostInfo']['ambari_server_host'][0]
 
 #ranger hdfs properties
 policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
 xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
 xa_audit_db_user = config['configurations']['admin-properties']['audit_db_user']
 xa_db_host = config['configurations']['admin-properties']['db_host']
@@ -423,13 +422,11 @@ if has_ranger_admin:
   xa_audit_db_flavor = (config['configurations']['admin-properties']['DB_FLAVOR']).lower()
 
   if xa_audit_db_flavor == 'mysql':
-    jdbc_symlink_name = "mysql-jdbc-driver.jar"
-    jdbc_jar_name = "mysql-connector-java.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor == 'oracle':
-    jdbc_jar_name = "ojdbc6.jar"
-    jdbc_symlink_name = "oracle-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -437,25 +434,24 @@ if has_ranger_admin:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor == 'postgres':
-    jdbc_jar_name = "postgresql.jar"
-    jdbc_symlink_name = "postgres-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor == 'mssql':
-    jdbc_jar_name = "sqljdbc4.jar"
-    jdbc_symlink_name = "mssql-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor == 'sqla':
-    jdbc_jar_name = "sajdbc4.jar"
-    jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+    jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
   downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
-  driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+  driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
   driver_curl_target = format("{hadoop_lib_home}/{jdbc_jar_name}")
 
+  sql_connector_jar = ''
+
   hdfs_ranger_plugin_config = {
     'username': repo_config_username,
     'password': repo_config_password,

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
index 35c6be2..70b8921 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
@@ -500,7 +500,6 @@ xml_configurations_supported = config['configurations']['ranger-env']['xml_confi
 
 #ranger hive properties
 policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
 xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
 xa_audit_db_user = config['configurations']['admin-properties']['audit_db_user']
 xa_db_host = config['configurations']['admin-properties']['db_host']
@@ -525,13 +524,11 @@ if has_ranger_admin:
   xa_audit_db_flavor = (config['configurations']['admin-properties']['DB_FLAVOR']).lower()
 
   if xa_audit_db_flavor and xa_audit_db_flavor == 'mysql':
-    ranger_jdbc_symlink_name = "mysql-jdbc-driver.jar"
-    ranger_jdbc_jar_name = "mysql-connector-java.jar"
+    ranger_jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'oracle':
-    ranger_jdbc_jar_name = "ojdbc6.jar"
-    ranger_jdbc_symlink_name = "oracle-jdbc-driver.jar"
+    ranger_jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -539,25 +536,23 @@ if has_ranger_admin:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'postgres':
-    ranger_jdbc_jar_name = "postgresql.jar"
-    ranger_jdbc_symlink_name = "postgres-jdbc-driver.jar"
+    ranger_jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'mssql':
-    ranger_jdbc_jar_name = "sqljdbc4.jar"
-    ranger_jdbc_symlink_name = "mssql-jdbc-driver.jar"
+    ranger_jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'sqla':
-    ranger_jdbc_jar_name = "sajdbc4.jar"
-    ranger_jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+    ranger_jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
   
   ranger_downloaded_custom_connector = format("{tmp_dir}/{ranger_jdbc_jar_name}")
   
-  ranger_driver_curl_source = format("{jdk_location}/{ranger_jdbc_symlink_name}")
+  ranger_driver_curl_source = format("{jdk_location}/{ranger_jdbc_jar_name}")
   ranger_driver_curl_target = format("{hive_lib}/{ranger_jdbc_jar_name}")
+  sql_connector_jar = ''
 
   hive_ranger_plugin_config = {
     'username': repo_config_username,

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/params.py b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/params.py
index dc0d9a8..b18e62d 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/params.py
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/params.py
@@ -170,7 +170,6 @@ if has_ranger_admin and is_supported_kafka_ranger:
   enable_ranger_kafka = config['configurations']['ranger-kafka-plugin-properties']['ranger-kafka-plugin-enabled']
   enable_ranger_kafka = not is_empty(enable_ranger_kafka) and enable_ranger_kafka.lower() == 'yes'
   policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-  sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
   xa_audit_db_flavor = config['configurations']['admin-properties']['DB_FLAVOR']
   xa_audit_db_flavor = xa_audit_db_flavor.lower() if xa_audit_db_flavor else None
   xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
@@ -211,13 +210,11 @@ if has_ranger_admin and is_supported_kafka_ranger:
   jdk_location = config['hostLevelParams']['jdk_location']
   java_share_dir = '/usr/share/java'
   if xa_audit_db_flavor and xa_audit_db_flavor == 'mysql':
-    jdbc_symlink_name = "mysql-jdbc-driver.jar"
-    jdbc_jar_name = "mysql-connector-java.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'oracle':
-    jdbc_jar_name = "ojdbc6.jar"
-    jdbc_symlink_name = "oracle-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -225,24 +222,21 @@ if has_ranger_admin and is_supported_kafka_ranger:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'postgres':
-    jdbc_jar_name = "postgresql.jar"
-    jdbc_symlink_name = "postgres-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'mssql':
-    jdbc_jar_name = "sqljdbc4.jar"
-    jdbc_symlink_name = "mssql-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor and xa_audit_db_flavor == 'sqla':
-    jdbc_jar_name = "sajdbc4.jar"
-    jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+    jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
   downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
 
-  driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+  driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
   driver_curl_target = format("{kafka_home}/libs/{jdbc_jar_name}")
 
   ranger_audit_solr_urls = config['configurations']['ranger-admin-site']['ranger.audit.solr.urls']

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/params_linux.py
index 79bdb3e..5c65a1e 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/params_linux.py
@@ -244,7 +244,6 @@ ambari_server_hostname = config['clusterHostInfo']['ambari_server_host'][0]
 
 # ranger knox properties
 policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
 xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
 xa_audit_db_user = config['configurations']['admin-properties']['audit_db_user']
 xa_db_host = config['configurations']['admin-properties']['db_host']
@@ -269,13 +268,11 @@ if has_ranger_admin:
   xa_audit_db_flavor = (config['configurations']['admin-properties']['DB_FLAVOR']).lower()
 
   if xa_audit_db_flavor == 'mysql':
-    jdbc_symlink_name = "mysql-jdbc-driver.jar"
-    jdbc_jar_name = "mysql-connector-java.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor == 'oracle':
-    jdbc_jar_name = "ojdbc6.jar"
-    jdbc_symlink_name = "oracle-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -283,25 +280,23 @@ if has_ranger_admin:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor == 'postgres':
-    jdbc_jar_name = "postgresql.jar"
-    jdbc_symlink_name = "postgres-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor == 'mssql':
-    jdbc_jar_name = "sqljdbc4.jar"
-    jdbc_symlink_name = "mssql-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor == 'sqla':
-    jdbc_jar_name = "sajdbc4.jar"
-    jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+    jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
   downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
 
-  driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+  driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
   driver_curl_target = format("{stack_root}/current/knox-server/ext/{jdbc_jar_name}")
+  sql_connector_jar = ''
 
   knox_ranger_plugin_config = {
     'username': repo_config_username,

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
index 5513757..6439a7e 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
@@ -55,7 +55,7 @@
 
   <property>
     <name>SQL_CONNECTOR_JAR</name>
-    <value>/usr/share/java/mysql-connector-java.jar</value>
+    <value>{{driver_curl_target}}</value>
     <display-name>Location of Sql Connector Jar</display-name>
     <description>Location of DB client library (please check the location of the jar file)</description>
     <value-attributes>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/params.py b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/params.py
index 50f5726..31398f3 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/params.py
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/params.py
@@ -126,13 +126,11 @@ oracle_home = default("/configurations/ranger-env/oracle_home", "-")
 jdk_location = config['hostLevelParams']['jdk_location'] 
 java_share_dir = '/usr/share/java'
 if db_flavor.lower() == 'mysql':
-  jdbc_symlink_name = "mysql-jdbc-driver.jar"
-  jdbc_jar_name = "mysql-connector-java.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
   audit_jdbc_url = format('jdbc:mysql://{db_host}/{ranger_auditdb_name}')
   jdbc_dialect = "org.eclipse.persistence.platform.database.MySQLPlatform"
 elif db_flavor.lower() == 'oracle':
-  jdbc_jar_name = "ojdbc6.jar"
-  jdbc_symlink_name = "oracle-jdbc-driver.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
   jdbc_dialect = "org.eclipse.persistence.platform.database.OraclePlatform"
   colon_count = db_host.count(':')
   if colon_count == 2 or colon_count == 0:
@@ -140,29 +138,28 @@ elif db_flavor.lower() == 'oracle':
   else:
     audit_jdbc_url = format('jdbc:oracle:thin:@//{db_host}')
 elif db_flavor.lower() == 'postgres':
-  jdbc_jar_name = "postgresql.jar"
-  jdbc_symlink_name = "postgres-jdbc-driver.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
   audit_jdbc_url = format('jdbc:postgresql://{db_host}/{ranger_auditdb_name}')
   jdbc_dialect = "org.eclipse.persistence.platform.database.PostgreSQLPlatform"
 elif db_flavor.lower() == 'mssql':
-  jdbc_jar_name = "sqljdbc4.jar"
-  jdbc_symlink_name = "mssql-jdbc-driver.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
   audit_jdbc_url = format('jdbc:sqlserver://{db_host};databaseName={ranger_auditdb_name}')
   jdbc_dialect = "org.eclipse.persistence.platform.database.SQLServerPlatform"
 elif db_flavor.lower() == 'sqla':
-  jdbc_jar_name = "sajdbc4.jar"
-  jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+  jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
   audit_jdbc_url = format('jdbc:sqlanywhere:database={ranger_auditdb_name};host={db_host}')
   jdbc_dialect = "org.eclipse.persistence.platform.database.SQLAnywherePlatform"
 
 downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
 
-driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
 driver_curl_target = format("{java_share_dir}/{jdbc_jar_name}")
+if stack_supports_config_versioning:
+  driver_curl_target = format("{ranger_home}/ews/lib/{jdbc_jar_name}")
 
 if db_flavor.lower() == 'sqla':
   downloaded_custom_connector = format("{tmp_dir}/sqla-client-jdbc.tar.gz")
-  jar_path_in_archive = format("{tmp_dir}/sqla-client-jdbc/java/{jdbc_jar_name}")
+  jar_path_in_archive = format("{tmp_dir}/sqla-client-jdbc/java/sajdbc4.jar")
   libs_path_in_archive = format("{tmp_dir}/sqla-client-jdbc/native/lib64/*")
   jdbc_libs_dir = format("{ranger_home}/native/lib64")
   ld_lib_path = format("{jdbc_libs_dir}")

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
index db89664..fe208de 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
@@ -58,6 +58,10 @@ def setup_ranger_admin(upgrade_type=None):
     properties=custom_config
   )
 
+  ModifyPropertiesFile(format("{ranger_home}/install.properties"),
+    properties = {'SQL_CONNECTOR_JAR': format('{driver_curl_target}')}
+  )
+
   ##if db flavor == oracle - set oracle home env variable
   if params.db_flavor.lower() == 'oracle' and params.oracle_home:
     env_dict = {'JAVA_HOME': params.java_home, 'ORACLE_HOME':params.oracle_home, 'LD_LIBRARY_PATH':params.oracle_home} 

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
index dc96e70..9a856a5 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
@@ -65,7 +65,7 @@ def setup_ranger_admin(upgrade_type=None):
 
   cp = format("{check_db_connection_jar}")
   if params.db_flavor.lower() == 'sqla':
-    cp = cp + os.pathsep + format("{ranger_home}/ews/lib/{jdbc_jar_name}")
+    cp = cp + os.pathsep + format("{ranger_home}/ews/lib/sajdbc4.jar")
   else:
     cp = cp + os.pathsep + format("{driver_curl_target}")
   cp = cp + os.pathsep + format("{ranger_home}/ews/lib/*")
@@ -275,19 +275,6 @@ def copy_jdbc_connector(stack_version=None):
     mode = 0644
   )
 
-  Directory(params.java_share_dir,
-    mode=0755,
-    create_parents=True,
-    cd_access="a"
-  )
-
-  if params.db_flavor.lower() != 'sqla':
-    Execute(('cp', '--remove-destination', params.downloaded_custom_connector, params.driver_curl_target),
-      path=["/bin", "/usr/bin/"],
-      sudo=True)
-
-    File(params.driver_curl_target, mode=0644)
-
   ranger_home = params.ranger_home
   if stack_version is not None:
     ranger_home = format("{stack_root}/{stack_version}/ranger-admin")
@@ -299,6 +286,8 @@ def copy_jdbc_connector(stack_version=None):
       path=["/bin", "/usr/bin/"],
       sudo=True)
 
+    File(os.path.join(ranger_home, 'ews', 'lib', 'sajdbc4.jar'), mode=0644)
+
     Directory(params.jdbc_libs_dir,
       cd_access="a",
       create_parents=True)
@@ -310,7 +299,7 @@ def copy_jdbc_connector(stack_version=None):
       path=["/bin", "/usr/bin/"],
       sudo=True)
 
-  File(os.path.join(ranger_home, 'ews', 'lib',params.jdbc_jar_name), mode=0644)
+    File(os.path.join(ranger_home, 'ews', 'lib',params.jdbc_jar_name), mode=0644)
 
   ModifyPropertiesFile(format("{ranger_home}/install.properties"),
     properties = params.config['configurations']['admin-properties'],
@@ -319,9 +308,14 @@ def copy_jdbc_connector(stack_version=None):
 
   if params.db_flavor.lower() == 'sqla':
     ModifyPropertiesFile(format("{ranger_home}/install.properties"),
-      properties = {'SQL_CONNECTOR_JAR': format('{ranger_home}/ews/lib/{jdbc_jar_name}')},
+      properties = {'SQL_CONNECTOR_JAR': format('{ranger_home}/ews/lib/sajdbc4.jar')},
       owner = params.unix_user,
     )
+  else:
+    ModifyPropertiesFile(format("{ranger_home}/install.properties"),
+      properties = {'SQL_CONNECTOR_JAR': format('{driver_curl_target}')},
+       owner = params.unix_user,
+    )
  
 def setup_usersync(upgrade_type=None):
   import params

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-properties.xml b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-properties.xml
index a5a57cf..0da8d89 100644
--- a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-properties.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-properties.xml
@@ -75,7 +75,7 @@
   <property>
     <name>SQL_CONNECTOR_JAR</name>
     <display-name>SQL connector jar</display-name>
-    <value>/usr/share/java/mysql-connector-java.jar</value>
+    <value>{{driver_curl_target}}</value>
     <description>Location of DB client library (please check the location of the jar file)</description>
     <value-attributes>
       <overridable>false</overridable>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms.py b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms.py
index 2bfe54c..7b8a646 100755
--- a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms.py
+++ b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms.py
@@ -144,7 +144,10 @@ def kms(upgrade_type=None):
     )
 
     cp = format("{check_db_connection_jar}")
-    cp = cp + os.pathsep + format("{kms_home}/ews/webapp/lib/{jdbc_jar_name}")
+    if params.db_flavor.lower() == 'sqla':
+      cp = cp + os.pathsep + format("{kms_home}/ews/webapp/lib/sajdbc4.jar")
+    else:
+      cp = cp + os.pathsep + format("{kms_home}/ews/webapp/lib/{jdbc_jar_name}")
 
     db_connection_check_command = format(
       "{java_home}/bin/java -cp {cp} org.apache.ambari.server.DBConnectionVerification '{ranger_kms_jdbc_connection_url}' {db_user} {db_password!p} {ranger_kms_jdbc_driver}")
@@ -289,19 +292,6 @@ def copy_jdbc_connector(stack_version=None):
     mode = 0644
   )
 
-  Directory(params.java_share_dir,
-    mode=0755,
-    create_parents=True,
-    cd_access="a"
-  )
-
-  if params.db_flavor.lower() != 'sqla':
-    Execute(('cp', '--remove-destination', params.downloaded_custom_connector, params.driver_curl_target),
-        path=["/bin", "/usr/bin/"],
-        sudo=True)
-
-    File(params.driver_curl_target, mode=0644)
-
   Directory(os.path.join(kms_home, 'ews', 'lib'),
     mode=0755
   )
@@ -319,12 +309,14 @@ def copy_jdbc_connector(stack_version=None):
 
     Execute(as_sudo(['yes', '|', 'cp', params.libs_path_in_archive, params.jdbc_libs_dir], auto_escape=False),
       path=["/bin", "/usr/bin/"])
+
+    File(os.path.join(kms_home, 'ews', 'webapp', 'lib', 'sajdbc4.jar'), mode=0644)
   else:
     Execute(('cp', '--remove-destination', params.downloaded_custom_connector, os.path.join(kms_home, 'ews', 'webapp', 'lib')),
       path=["/bin", "/usr/bin/"],
       sudo=True)
 
-  File(os.path.join(kms_home, 'ews', 'webapp', 'lib', params.jdbc_jar_name), mode=0644)
+    File(os.path.join(kms_home, 'ews', 'webapp', 'lib', params.jdbc_jar_name), mode=0644)
 
   ModifyPropertiesFile(format("{kms_home}/install.properties"),
     properties = params.config['configurations']['kms-properties'],
@@ -333,7 +325,12 @@ def copy_jdbc_connector(stack_version=None):
 
   if params.db_flavor.lower() == 'sqla':
     ModifyPropertiesFile(format("{kms_home}/install.properties"),
-      properties = {'SQL_CONNECTOR_JAR': format('{kms_home}/ews/webapp/lib/{jdbc_jar_name}')},
+      properties = {'SQL_CONNECTOR_JAR': format('{kms_home}/ews/webapp/lib/sajdbc4.jar')},
+      owner = params.kms_user,
+    )
+  else:
+    ModifyPropertiesFile(format("{kms_home}/install.properties"),
+      properties = {'SQL_CONNECTOR_JAR': format('{driver_curl_target}')},
       owner = params.kms_user,
     )
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/params.py b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/params.py
index a849fd3..f935a5a 100755
--- a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/params.py
+++ b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/params.py
@@ -93,14 +93,12 @@ if has_ranger_admin:
 java_share_dir = '/usr/share/java'
 
 if db_flavor == 'mysql':
-  jdbc_symlink_name = "mysql-jdbc-driver.jar"
-  jdbc_jar_name = "mysql-connector-java.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
   db_jdbc_url = format('jdbc:log4jdbc:mysql://{db_host}/{db_name}')
-  db_jdbc_driver = "net.sf.log4jdbc.DriverSpy"
+  db_jdbc_driver = "com.mysql.jdbc.Driver"
   jdbc_dialect = "org.eclipse.persistence.platform.database.MySQLPlatform"
 elif db_flavor == 'oracle':
-  jdbc_jar_name = "ojdbc6.jar"
-  jdbc_symlink_name = "oracle-jdbc-driver.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
   colon_count = db_host.count(':')
   if colon_count == 2 or colon_count == 0:
     db_jdbc_url = format('jdbc:oracle:thin:@{db_host}')
@@ -109,46 +107,41 @@ elif db_flavor == 'oracle':
   db_jdbc_driver = "oracle.jdbc.OracleDriver"
   jdbc_dialect = "org.eclipse.persistence.platform.database.OraclePlatform"
 elif db_flavor == 'postgres':
-  jdbc_jar_name = "postgresql.jar"
-  jdbc_symlink_name = "postgres-jdbc-driver.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
   db_jdbc_url = format('jdbc:postgresql://{db_host}/{db_name}')
   db_jdbc_driver = "org.postgresql.Driver"
   jdbc_dialect = "org.eclipse.persistence.platform.database.PostgreSQLPlatform"
 elif db_flavor == 'mssql':
-  jdbc_jar_name = "sqljdbc4.jar"
-  jdbc_symlink_name = "mssql-jdbc-driver.jar"
+  jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
   db_jdbc_url = format('jdbc:sqlserver://{db_host};databaseName={db_name}')
   db_jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   jdbc_dialect = "org.eclipse.persistence.platform.database.SQLServerPlatform"
 elif db_flavor == 'sqla':
-  jdbc_jar_name = "sajdbc4.jar"
-  jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+  jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
   db_jdbc_url = format('jdbc:sqlanywhere:database={db_name};host={db_host}')
   db_jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
   jdbc_dialect = "org.eclipse.persistence.platform.database.SQLAnywherePlatform"
 
 downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
 
-driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
-driver_curl_target = format("{java_share_dir}/{jdbc_jar_name}")
+driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
+driver_curl_target = format("{kms_home}/ews/webapp/lib/{jdbc_jar_name}")
 ews_lib_jar_path = format("{kms_home}/ews/webapp/lib/{jdbc_jar_name}")
 
 if db_flavor == 'sqla':
   downloaded_custom_connector = format("{tmp_dir}/sqla-client-jdbc.tar.gz")
-  jar_path_in_archive = format("{tmp_dir}/sqla-client-jdbc/java/{jdbc_jar_name}")
+  jar_path_in_archive = format("{tmp_dir}/sqla-client-jdbc/java/sajdbc4.jar")
   libs_path_in_archive = format("{tmp_dir}/sqla-client-jdbc/native/lib64/*")
   jdbc_libs_dir = format("{kms_home}/native/lib64")
   ld_library_path = format("{jdbc_libs_dir}")
 
 if has_ranger_admin:
   if xa_audit_db_flavor == 'mysql':
-    jdbc_symlink = "mysql-jdbc-driver.jar"
-    jdbc_jar = "mysql-connector-java.jar"
+    jdbc_jar = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor == 'oracle':
-    jdbc_jar = "ojdbc6.jar"
-    jdbc_symlink = "oracle-jdbc-driver.jar"
+    jdbc_jar = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -156,25 +149,22 @@ if has_ranger_admin:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor == 'postgres':
-    jdbc_jar = "postgresql.jar"
-    jdbc_symlink = "postgres-jdbc-driver.jar"
+    jdbc_jar = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor == 'mssql':
-    jdbc_jar = "sqljdbc4.jar"
-    jdbc_symlink = "mssql-jdbc-driver.jar"
+    jdbc_jar = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor == 'sqla':
-    jdbc_jar = "sajdbc4.jar"
-    jdbc_symlink = "sqlanywhere-jdbc-driver.tar.gz"
+    jdbc_jar = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
   downloaded_connector_path = format("{tmp_dir}/{jdbc_jar}")
 
-  driver_source = format("{jdk_location}/{jdbc_symlink}")
-  driver_target = format("{java_share_dir}/{jdbc_jar}")
+  driver_source = format("{jdk_location}/{jdbc_jar}")
+  driver_target = format("{kms_home}/ews/webapp/lib/{jdbc_jar}")
 
 repo_config_username = config['configurations']['kms-properties']['REPOSITORY_CONFIG_USERNAME']
 repo_config_password = unicode(config['configurations']['kms-properties']['REPOSITORY_CONFIG_PASSWORD'])

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
index 53aa4dd..4b4e776 100644
--- a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
@@ -187,7 +187,6 @@ ambari_server_hostname = config['clusterHostInfo']['ambari_server_host'][0]
 
 #ranger storm properties
 policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
 xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
 xa_audit_db_user = config['configurations']['admin-properties']['audit_db_user']
 xa_db_host = config['configurations']['admin-properties']['db_host']
@@ -218,13 +217,11 @@ if has_ranger_admin:
   xa_audit_db_flavor = (config['configurations']['admin-properties']['DB_FLAVOR']).lower()
 
   if xa_audit_db_flavor == 'mysql':
-    jdbc_symlink_name = "mysql-jdbc-driver.jar"
-    jdbc_jar_name = "mysql-connector-java.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "com.mysql.jdbc.Driver"
   elif xa_audit_db_flavor == 'oracle':
-    jdbc_jar_name = "ojdbc6.jar"
-    jdbc_symlink_name = "oracle-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
     colon_count = xa_db_host.count(':')
     if colon_count == 2 or colon_count == 0:
       audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -232,25 +229,23 @@ if has_ranger_admin:
       audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
     jdbc_driver = "oracle.jdbc.OracleDriver"
   elif xa_audit_db_flavor == 'postgres':
-    jdbc_jar_name = "postgresql.jar"
-    jdbc_symlink_name = "postgres-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
     audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
     jdbc_driver = "org.postgresql.Driver"
   elif xa_audit_db_flavor == 'mssql':
-    jdbc_jar_name = "sqljdbc4.jar"
-    jdbc_symlink_name = "mssql-jdbc-driver.jar"
+    jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
     jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
   elif xa_audit_db_flavor == 'sqla':
-    jdbc_jar_name = "sajdbc4.jar"
-    jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+    jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
     audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
     jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
   downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
 
-  driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+  driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
   driver_curl_target = format("{storm_component_home_dir}/lib/{jdbc_jar_name}")
+  sql_connector_jar = ''
 
   storm_ranger_plugin_config = {
     'username': repo_config_username,

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py
index 40b076d..b674c40 100644
--- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py
@@ -354,7 +354,6 @@ if has_ranger_admin:
   if is_supported_yarn_ranger:
     enable_ranger_yarn = (config['configurations']['ranger-yarn-plugin-properties']['ranger-yarn-plugin-enabled'].lower() == 'yes')
     policymgr_mgr_url = config['configurations']['admin-properties']['policymgr_external_url']
-    sql_connector_jar = config['configurations']['admin-properties']['SQL_CONNECTOR_JAR']
     xa_audit_db_flavor = (config['configurations']['admin-properties']['DB_FLAVOR']).lower()
     xa_audit_db_name = config['configurations']['admin-properties']['audit_db_name']
     xa_audit_db_user = config['configurations']['admin-properties']['audit_db_user']
@@ -387,13 +386,11 @@ if has_ranger_admin:
     jdk_location = config['hostLevelParams']['jdk_location']
     java_share_dir = '/usr/share/java'
     if xa_audit_db_flavor and xa_audit_db_flavor == 'mysql':
-      jdbc_symlink_name = "mysql-jdbc-driver.jar"
-      jdbc_jar_name = "mysql-connector-java.jar"
+      jdbc_jar_name = default("/hostLevelParams/custom_mysql_jdbc_name", None)
       audit_jdbc_url = format('jdbc:mysql://{xa_db_host}/{xa_audit_db_name}')
       jdbc_driver = "com.mysql.jdbc.Driver"
     elif xa_audit_db_flavor and xa_audit_db_flavor == 'oracle':
-      jdbc_jar_name = "ojdbc6.jar"
-      jdbc_symlink_name = "oracle-jdbc-driver.jar"
+      jdbc_jar_name = default("/hostLevelParams/custom_oracle_jdbc_name", None)
       colon_count = xa_db_host.count(':')
       if colon_count == 2 or colon_count == 0:
         audit_jdbc_url = format('jdbc:oracle:thin:@{xa_db_host}')
@@ -401,24 +398,21 @@ if has_ranger_admin:
         audit_jdbc_url = format('jdbc:oracle:thin:@//{xa_db_host}')
       jdbc_driver = "oracle.jdbc.OracleDriver"
     elif xa_audit_db_flavor and xa_audit_db_flavor == 'postgres':
-      jdbc_jar_name = "postgresql.jar"
-      jdbc_symlink_name = "postgres-jdbc-driver.jar"
+      jdbc_jar_name = default("/hostLevelParams/custom_postgres_jdbc_name", None)
       audit_jdbc_url = format('jdbc:postgresql://{xa_db_host}/{xa_audit_db_name}')
       jdbc_driver = "org.postgresql.Driver"
     elif xa_audit_db_flavor and xa_audit_db_flavor == 'mssql':
-      jdbc_jar_name = "sqljdbc4.jar"
-      jdbc_symlink_name = "mssql-jdbc-driver.jar"
+      jdbc_jar_name = default("/hostLevelParams/custom_mssql_jdbc_name", None)
       audit_jdbc_url = format('jdbc:sqlserver://{xa_db_host};databaseName={xa_audit_db_name}')
       jdbc_driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
     elif xa_audit_db_flavor and xa_audit_db_flavor == 'sqla':
-      jdbc_jar_name = "sajdbc4.jar"
-      jdbc_symlink_name = "sqlanywhere-jdbc-driver.tar.gz"
+      jdbc_jar_name = default("/hostLevelParams/custom_sqlanywhere_jdbc_name", None)
       audit_jdbc_url = format('jdbc:sqlanywhere:database={xa_audit_db_name};host={xa_db_host}')
       jdbc_driver = "sap.jdbc4.sqlanywhere.IDriver"
 
     downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
 
-    driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
+    driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
     driver_curl_target = format("{hadoop_yarn_home}/lib/{jdbc_jar_name}")
 
     ranger_audit_solr_urls = config['configurations']['ranger-admin-site']['ranger.audit.solr.urls']

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/stack_advisor.py
index 2198247..0130483 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/stack_advisor.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/stack_advisor.py
@@ -357,21 +357,9 @@ class HDP206StackAdvisor(DefaultStackAdvisor):
 
 
   def recommendRangerConfigurations(self, configurations, clusterData, services, hosts):
-    ranger_sql_connector_dict = {
-      'MYSQL': '/usr/share/java/mysql-connector-java.jar',
-      'ORACLE': '/usr/share/java/ojdbc6.jar',
-      'POSTGRES': '/usr/share/java/postgresql.jar',
-      'MSSQL': '/usr/share/java/sqljdbc4.jar',
-      'SQLA': '/path_to_driver/sqla-client-jdbc.tar.gz'
-    }
 
     putRangerAdminProperty = self.putProperty(configurations, "admin-properties", services)
 
-    if 'admin-properties' in services['configurations'] and 'DB_FLAVOR' in services['configurations']['admin-properties']['properties']:
-      rangerDbFlavor = services['configurations']["admin-properties"]["properties"]["DB_FLAVOR"]
-      rangerSqlConnectorProperty = ranger_sql_connector_dict.get(rangerDbFlavor, ranger_sql_connector_dict['MYSQL'])
-      putRangerAdminProperty('SQL_CONNECTOR_JAR', rangerSqlConnectorProperty)
-
     # Build policymgr_external_url
     protocol = 'http'
     ranger_admin_host = 'localhost'

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
index 741011c..8cafe6a 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py
@@ -467,16 +467,6 @@ class HDP23StackAdvisor(HDP22StackAdvisor):
     if 'kms-properties' in services['configurations'] and ('DB_FLAVOR' in services['configurations']['kms-properties']['properties']):
 
       rangerKmsDbFlavor = services['configurations']["kms-properties"]["properties"]["DB_FLAVOR"]
-      ranger_kms_sql_connector_dict = {
-        'MYSQL': '/usr/share/java/mysql-connector-java.jar',
-        'ORACLE': '/usr/share/java/ojdbc6.jar',
-        'POSTGRES': '/usr/share/java/postgresql.jar',
-        'MSSQL': '/usr/share/java/sqljdbc4.jar',
-        'SQLA': '/path_to_driver/sqla-client-jdbc.tar.gz'
-      }
-
-      rangerKmsSqlConnectorProperty = ranger_kms_sql_connector_dict.get(rangerKmsDbFlavor, ranger_kms_sql_connector_dict['MYSQL'])
-      putRangerKmsProperty('SQL_CONNECTOR_JAR', rangerKmsSqlConnectorProperty)
 
       if ('db_host' in services['configurations']['kms-properties']['properties']) and ('db_name' in services['configurations']['kms-properties']['properties']):
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/test/python/stacks/2.0.6/common/test_stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.0.6/common/test_stack_advisor.py b/ambari-server/src/test/python/stacks/2.0.6/common/test_stack_advisor.py
index 681824a..d434cae 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/common/test_stack_advisor.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/common/test_stack_advisor.py
@@ -772,8 +772,7 @@ class TestHDP206StackAdvisor(TestCase):
     expected = {
       "admin-properties": {
         "properties": {
-          "SQL_CONNECTOR_JAR": "/usr/share/java/mysql-connector-java.jar",
-          "policymgr_external_url": "http://host1:7777",
+          "policymgr_external_url": "http://host1:7777"
         }
       }
     }
@@ -800,8 +799,7 @@ class TestHDP206StackAdvisor(TestCase):
     expected = {
       "admin-properties": {
         "properties": {
-          "SQL_CONNECTOR_JAR": "/usr/share/java/postgresql.jar",
-          "policymgr_external_url": "https://host1:7777",
+          "policymgr_external_url": "https://host1:7777"
           }
       }
     }
@@ -827,8 +825,7 @@ class TestHDP206StackAdvisor(TestCase):
     expected = {
       "admin-properties": {
         "properties": {
-          "SQL_CONNECTOR_JAR": "/usr/share/java/ojdbc6.jar",
-          "policymgr_external_url": "https://host1:8888",
+          "policymgr_external_url": "https://host1:8888"
           }
       },
       "ranger-env": {"properties": {}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py b/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
index a5cc123..d338c28 100644
--- a/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
+++ b/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
@@ -114,7 +114,7 @@ class TestRangerAdmin(RMFTestCase):
     self.assertResourceCalled('Execute', 'mysql -u root --password=aa -h localhost  -s -e "select version();"',logoutput = True,
                               environment = {})
     self.assertResourceCalled('File', '/tmp/mysql-connector-java.jar',
-        content = DownloadSource('http://c6401.ambari.apache.org:8080/resources//mysql-jdbc-driver.jar'),
+        content = DownloadSource('http://c6401.ambari.apache.org:8080/resources//mysql-connector-java.jar'),
         mode = 0644
     )
     self.assertResourceCalled('Execute', ('cp',
@@ -136,6 +136,9 @@ class TestRangerAdmin(RMFTestCase):
     self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
         properties = custom_config,
     )
+    self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
+        properties = {'SQL_CONNECTOR_JAR': '/usr/share/java/mysql-connector-java.jar'}
+    )
     self.assertResourceCalled('Execute', 'cd /usr/hdp/current/ranger-admin && ambari-sudo.sh [RMF_ENV_PLACEHOLDER] -H -E /usr/hdp/current/ranger-admin/setup.sh',
         logoutput = True,
         environment = {'JAVA_HOME': u'/usr/jdk64/jdk1.7.0_45'},
@@ -156,7 +159,7 @@ class TestRangerAdmin(RMFTestCase):
     self.assertResourceCalled('Execute', 'mysql -u root --password=rootpassword -h localhost  -s -e "select version();"',logoutput = True,
                               environment = {})
     self.assertResourceCalled('File', '/tmp/mysql-connector-java.jar',
-        content = DownloadSource('http://c6401.ambari.apache.org:8080/resources//mysql-jdbc-driver.jar'),
+        content = DownloadSource('http://c6401.ambari.apache.org:8080/resources//mysql-connector-java.jar'),
         mode = 0644
     )
     self.assertResourceCalled('Execute', ('cp',
@@ -178,6 +181,9 @@ class TestRangerAdmin(RMFTestCase):
     self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
         properties = custom_config,
     )
+    self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
+        properties = {'SQL_CONNECTOR_JAR': '/usr/share/java/mysql-connector-java.jar'}
+    )
     self.assertResourceCalled('Execute', 'cd /usr/hdp/current/ranger-admin && ambari-sudo.sh [RMF_ENV_PLACEHOLDER] -H -E /usr/hdp/current/ranger-admin/setup.sh',
         logoutput = True,
         environment = {'JAVA_HOME': u'/usr/jdk64/jdk1.7.0_45'},

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-default.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-default.json b/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-default.json
index eb2cba8..151c886 100644
--- a/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-default.json
+++ b/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-default.json
@@ -15,7 +15,12 @@
         "ambari_db_rca_username": "mapred",
         "java_home": "/usr/jdk64/jdk1.7.0_45",
         "java_version": "8",
-        "db_name": "ambari"
+        "db_name": "ambari",
+        "custom_mysql_jdbc_name" : "mysql-connector-java.jar",
+        "custom_oracle_jdbc_name" : "oracle-jdbc-driver.jar",
+        "custom_postgres_jdbc_name" : "test-postgres-jdbc.jar",
+        "custom_mssql_jdbc_name" : "mssql-jdbc-driver.jar",
+        "custom_sqlanywhere_jdbc_name" : "sqla-client-jdbc.tar.gz"
     },
     "commandType": "EXECUTION_COMMAND",
     "roleParams": {},

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-secured.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-secured.json b/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-secured.json
index c3a9b71..b6d7d5b 100644
--- a/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-secured.json
+++ b/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-secured.json
@@ -15,7 +15,12 @@
         "ambari_db_rca_username": "mapred",
         "java_home": "/usr/jdk64/jdk1.7.0_45",
         "java_version": "8",
-        "db_name": "ambari"
+        "db_name": "ambari",
+        "custom_mysql_jdbc_name" : "mysql-connector-java.jar",
+        "custom_oracle_jdbc_name" : "oracle-jdbc-driver.jar",
+        "custom_postgres_jdbc_name" : "test-postgres-jdbc.jar",
+        "custom_mssql_jdbc_name" : "mssql-jdbc-driver.jar",
+        "custom_sqlanywhere_jdbc_name" : "sqla-client-jdbc.tar.gz"
     },
     "commandType": "EXECUTION_COMMAND",
     "roleParams": {},

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-upgrade.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-upgrade.json b/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-upgrade.json
index b3764a4..a321dfb 100644
--- a/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-upgrade.json
+++ b/ambari-server/src/test/python/stacks/2.2/configs/ranger-admin-upgrade.json
@@ -76,7 +76,12 @@
         "ambari_db_rca_username": "mapred", 
         "db_driver_filename": "mysql-connector-java.jar", 
         "user_list": "[\"root\",\"ambari-qa\",\"hdfs\",\"ranger\",\"spark\",\"mapred\",\"tez\",\"zookeeper\",\"rangerlogger\",\"kafka\",\"yarn\",\"ams\",\"rangeradmin\"]", 
-        "mysql_jdbc_url": "http://c6407.ambari.apache.org:8080/resources//mysql-connector-java.jar"
+        "mysql_jdbc_url": "http://c6407.ambari.apache.org:8080/resources//mysql-connector-java.jar",
+        "custom_mysql_jdbc_name" : "mysql-connector-java.jar",
+        "custom_oracle_jdbc_name" : "oracle-jdbc-driver.jar",
+        "custom_postgres_jdbc_name" : "test-postgres-jdbc.jar",
+        "custom_mssql_jdbc_name" : "mssql-jdbc-driver.jar",
+        "custom_sqlanywhere_jdbc_name" : "sqla-client-jdbc.tar.gz"
     }, 
     "commandType": "EXECUTION_COMMAND", 
     "roleParams": {

http://git-wip-us.apache.org/repos/asf/ambari/blob/dc4186f5/ambari-server/src/test/python/stacks/2.3/common/test_stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.3/common/test_stack_advisor.py b/ambari-server/src/test/python/stacks/2.3/common/test_stack_advisor.py
index 39f0c06..4fe8a0e 100644
--- a/ambari-server/src/test/python/stacks/2.3/common/test_stack_advisor.py
+++ b/ambari-server/src/test/python/stacks/2.3/common/test_stack_advisor.py
@@ -1892,8 +1892,7 @@ class TestHDP23StackAdvisor(TestCase):
     expected = {
       'admin-properties': {
         'properties': {
-          'policymgr_external_url': 'http://host1:7777',
-          'SQL_CONNECTOR_JAR': '/usr/share/java/mysql-connector-java.jar'
+          'policymgr_external_url': 'http://host1:7777'
         }
       },
       'ranger-ugsync-site': {