You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Robert Levas (JIRA)" <ji...@apache.org> on 2014/11/29 00:32:12 UTC
[jira] [Updated] (AMBARI-8478) Falcon service components should
indicate security state
[ https://issues.apache.org/jira/browse/AMBARI-8478?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Levas updated AMBARI-8478:
---------------------------------
Summary: Falcon service components should indicate security state (was: HDFS service components should indicate security state)
> Falcon service components should indicate security state
> --------------------------------------------------------
>
> Key: AMBARI-8478
> URL: https://issues.apache.org/jira/browse/AMBARI-8478
> Project: Ambari
> Issue Type: Improvement
> Components: ambari-server, stacks
> Affects Versions: 2.0.0
> Reporter: Robert Levas
> Assignee: Robert Levas
> Labels: kerberos, lifecycle, security
> Fix For: 2.0.0
>
>
> The Falcon service components should indicate security state when queried by Ambari Agent via STATUS_COMMAND. Each component should determine it's state as follows:
> h3. FALCON_CLIENT
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> h4. PseudoCode
> {code}
> if indicators imply security is on and validate
> state = SECURED_KERBEROS
> else
> state = UNSECURED
> {code}
> h3. FALCON_SERVER
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: /etc/falcon/conf/startup.properties
> ** *.falcon.authentication.type
> *** = “kerberos”
> ** *.falcon.service.authentication.kerberos.principal
> *** not empty
> *** required
> ** *.falcon.service.authentication.kerberos.keytab
> *** not empty
> *** required
> *** path exists and is readable
> ** *.dfs.namenode.kerberos.principal
> *** not empty
> *** required?
> ** *.falcon.http.authentication.type
> *** = “kerberos”
> ** *.falcon.http.authentication.kerberos.principal
> *** required if *.falcon.http.authentication.type == ”kerberos”
> *** not empty
> ** *.falcon.http.authentication.kerberos.keytab
> *** required if *.falcon.http.authentication.type == ”kerberos”
> *** not empty
> *** path exists and is readable
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(falcon principal) && kinit(http 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.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)