You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Robert Levas (JIRA)" <ji...@apache.org> on 2016/09/22 14:22:20 UTC
[jira] [Updated] (AMBARI-18433) Enforce granular role-based access
control for custom actions
[ https://issues.apache.org/jira/browse/AMBARI-18433?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Levas updated AMBARI-18433:
----------------------------------
Attachment: AMBARI-18433_trunk_01.patch
AMBARI-18433_branch-2.5_01.patch
> Enforce granular role-based access control for custom actions
> -------------------------------------------------------------
>
> Key: AMBARI-18433
> URL: https://issues.apache.org/jira/browse/AMBARI-18433
> Project: Ambari
> Issue Type: Bug
> Components: ambari-server
> Affects Versions: 2.4.0
> Reporter: Robert Levas
> Assignee: Robert Levas
> Priority: Critical
> Labels: rbac
> Fix For: 2.5.0
>
> Attachments: AMBARI-18433_branch-2.5_01.patch, AMBARI-18433_trunk_01.patch
>
>
> Enforce granular role-based access control for custom actions. Such actions are specified in {{/var/lib/ambari-server/resources/custom_action_definitions/system_action_definitions.xml}}
> For example:
> {code}
> <actionDefinition>
> <actionName>check_host</actionName>
> <actionType>SYSTEM</actionType>
> <inputs/>
> <targetService/>
> <targetComponent/>
> <defaultTimeout>60</defaultTimeout>
> <description>General check for host</description>
> <targetType>ANY</targetType>
> <permissions>HOST.ADD_DELETE_HOSTS</permissions>
> </actionDefinition>
> {code}
> The "permissions" element that declare the permissions required to run the action. These permissions must be used to authorize a user to perform the operation. A user needs to have one of the listed permissions in order to be authorized.
> The relevant API entry points are:
> * {{/api/v1/requests}}
> * {{/api/v1/requests/clusters/:CLUSTER_NAME/request}}
> Example: The user executing the following REST API call must be assigned a role that has the {{HOST.ADD_DELETE_HOSTS}} authorization for the relevant cluster
> {noformat}
> POST /api/v1/requests
> {
> "RequestInfo": {
> "action": "check_host",
> "log_output": "false",
> "context": "Check host",
> "parameters": {
> "check_execute_list": "last_agent_env_check,installed_packages,existing_repos,transparentHugePage",
> "jdk_location": "http://host1.example.com:8080/resources/",
> "threshold": "20"
> }
> },
> "Requests/resource_filters": [
> {
> "hosts": "host1.example.com"
> }
> ]
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)