Repository: ambari Updated Branches: refs/heads/trunk 6b4f40695 -> 3a7a2d1b0
AMBARI-20494. Disabling security fails with AttributeError (rlevas) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/3a7a2d1b Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/3a7a2d1b Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/3a7a2d1b Branch: refs/heads/trunk Commit: 3a7a2d1b025b4ba234e2f066481dbe4991496f25 Parents: 6b4f406 Author: Robert Levas <[email protected]> Authored: Mon Mar 20 10:07:27 2017 -0400 Committer: Robert Levas <[email protected]> Committed: Mon Mar 20 10:07:27 2017 -0400 ---------------------------------------------------------------------- .../stacks/HDP/2.5/services/stack_advisor.py | 24 +++++++++++++------- .../stacks/2.5/common/test_stack_advisor.py | 5 ++++ 2 files changed, 21 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/3a7a2d1b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py index 13151eb..555cf4d 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py +++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py @@ -468,17 +468,25 @@ class HDP25StackAdvisor(HDP24StackAdvisor): def recommendStormConfigurations(self, configurations, clusterData, services, hosts): super(HDP25StackAdvisor, self).recommendStormConfigurations(configurations, clusterData, services, hosts) storm_site = self.getServicesSiteProperties(services, "storm-site") + storm_env = self.getServicesSiteProperties(services, "storm-env") putStormSiteProperty = self.putProperty(configurations, "storm-site", services) putStormSiteAttributes = self.putPropertyAttribute(configurations, "storm-site") - security_enabled = (storm_site is not None and "storm.zookeeper.superACL" in storm_site) + security_enabled = self.isSecurityEnabled(services) + + if storm_env and storm_site: + if security_enabled: + _storm_principal_name = storm_env['storm_principal_name'] if 'storm_principal_name' in storm_env else None + storm_bare_jaas_principal = get_bare_principal(_storm_principal_name) + if 'nimbus.impersonation.acl' in storm_site: + storm_nimbus_impersonation_acl = storm_site["nimbus.impersonation.acl"] + storm_nimbus_impersonation_acl.replace('{{storm_bare_jaas_principal}}', storm_bare_jaas_principal) + putStormSiteProperty('nimbus.impersonation.acl', storm_nimbus_impersonation_acl) + else: + if 'nimbus.impersonation.acl' in storm_site: + putStormSiteAttributes('nimbus.impersonation.acl', 'delete', 'true') + if 'nimbus.impersonation.authorizer' in storm_site: + putStormSiteAttributes('nimbus.impersonation.authorizer', 'delete', 'true') - if security_enabled: - _storm_principal_name = services['configurations']['storm-env']['properties']['storm_principal_name'] - storm_bare_jaas_principal = get_bare_principal(_storm_principal_name) - if 'nimbus.impersonation.acl' in storm_site: - storm_nimbus_impersonation_acl = storm_site["nimbus.impersonation.acl"] - storm_nimbus_impersonation_acl.replace('{{storm_bare_jaas_principal}}', storm_bare_jaas_principal) - putStormSiteProperty('nimbus.impersonation.acl', storm_nimbus_impersonation_acl) rangerPluginEnabled = '' if 'ranger-storm-plugin-properties' in configurations and 'ranger-storm-plugin-enabled' in configurations['ranger-storm-plugin-properties']['properties']: rangerPluginEnabled = configurations['ranger-storm-plugin-properties']['properties']['ranger-storm-plugin-enabled'] http://git-wip-us.apache.org/repos/asf/ambari/blob/3a7a2d1b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py index 693b067..255d5c5 100644 --- a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py +++ b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py @@ -5369,6 +5369,11 @@ class TestHDP25StackAdvisor(TestCase): "stack_version": "2.5" }, "configurations": { + "cluster-env": { + "properties": { + "security_enabled": "true" + } + }, "storm-site": { "properties": { "nimbus.authorizer" : "org.apache.storm.security.auth.authorizer.SimpleACLAuthorizer",
