[
https://issues.apache.org/jira/browse/AMBARI-9037?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robert Levas reopened AMBARI-9037:
----------------------------------
Apparently I failed to commit this, now there are merge conflicts
> Storm service components should indicate security state
> -------------------------------------------------------
>
> Key: AMBARI-9037
> URL: https://issues.apache.org/jira/browse/AMBARI-9037
> Project: Ambari
> Issue Type: Task
> Components: ambari-server, stacks
> Affects Versions: 2.0.0
> Reporter: Robert Levas
> Assignee: Robert Levas
> Labels: keberos, storm
> Fix For: 2.0.0
>
> Attachments: AMBARI-9037_01.patch
>
>
> The Storm service components should indicate security state when queried by
> Ambari Agent via STATUS_COMMAND. Each component should determine it's state
> as follows:
> h3. DRPC_SERVER
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: params.conf_dir + ‘/storm-jaas.conf’
> ** StormServer/keyTab
> *** not empty
> *** path exists and is readable
> *** required
> ** StormServer/principal
> *** not empty
> *** required
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(drpc server master principal) succeeds
> state = SECURED_KERBEROS
> else
> state = ERROR
> else
> state = UNSECURED
> {code}
> h3. STORM_UI_SERVER
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: params.conf_dir + ‘/storm-jaas.conf’
> ** StormClient/keyTab
> *** not empty
> *** path exists and is readable
> *** required
> ** StormClient/principal
> *** not empty
> *** required
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(storm ui server principal) succeeds
> state = SECURED_KERBEROS
> else
> state = ERROR
> else
> state = UNSECURED
> {code}
> h3. NIMBUS
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: params.conf_dir + ‘/storm-jaas.conf’
> ** StormServer/keyTab
> *** not empty
> *** path exists and is readable
> *** required
> ** StormServer/principal
> *** not empty
> *** required
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(nimbus master principal) succeeds
> state = SECURED_KERBEROS
> else
> state = ERROR
> else
> state = UNSECURED
> {code}
> _*Note*_: Due to the _cost_ of calling {{kinit}} results should be cached for
> a period of time before retrying. This may be an issue depending on the
> frequency of the heartbeat timeout.
> _*Note*_: {{kinit}} calls should specify a _temporary_ cache file which
> should be destroyed after command is executed - BUG-29477
> _*Note*_: There may be additional work related to _REST gateway impersonation_
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)