hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rohith (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-2894) When ACL's are enabled, if RM switches then application can not be viewed from web.
Date Wed, 26 Nov 2014 16:33:12 GMT

    [ https://issues.apache.org/jira/browse/YARN-2894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14226406#comment-14226406
] 

Rohith commented on YARN-2894:
------------------------------

Attached patch without test. Did not get much idea how to write test for RMWeb in RMHA. I
have verified fix manually testing. It is working fine. Kindly review.



> When ACL's are enabled, if RM switches then application can not be viewed from web.
> -----------------------------------------------------------------------------------
>
>                 Key: YARN-2894
>                 URL: https://issues.apache.org/jira/browse/YARN-2894
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: resourcemanager
>    Affects Versions: 2.6.0
>            Reporter: Rohith
>            Assignee: Rohith
>             Fix For: 2.7.0
>
>         Attachments: YARN-2894.patch
>
>
> Binding aclManager to RMWebApp would cause problem if RM is switched. There could be
some validation check may fail.
> I think , we should not bind aclManager for RMWebApp, instead we should get from RM instance.
> In RMWebApp,
> {code}
>     if (rm != null) {
>       bind(ResourceManager.class).toInstance(rm);
>       bind(RMContext.class).toInstance(rm.getRMContext());
>       bind(ApplicationACLsManager.class).toInstance(
>           rm.getApplicationACLsManager());
>       bind(QueueACLsManager.class).toInstance(rm.getQueueACLsManager());
>     }
> {code}
> and in AppBlock#render below check may fail(Need to test and confirm)
> {code}
>    if (callerUGI != null
>         && !(this.aclsManager.checkAccess(callerUGI,
>                 ApplicationAccessType.VIEW_APP, app.getUser(), appID) ||
>              this.queueACLsManager.checkAccess(callerUGI,
>                 QueueACL.ADMINISTER_QUEUE, app.getQueue()))) {
>       puts("You (User " + remoteUser
>           + ") are not authorized to view application " + appID);
>       return;
>     }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message