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

Joerg Schad commented on MESOS-5588:
------------------------------------

One weird inconsistency is that we have different optional/required semantics 
in different acls:

{code}
  // Specifies which roles a principal can reserve resources for.
  message ReserveResources {
    // Subjects: Framework principal or Operator username.
    required Entity principals = 1;

    // Objects: The principal(s) can reserve resources for these roles.
    required Entity roles = 2;
  }
{code}

vs. 
{code}
  // Which principals are authorized to access the Mesos logs.
  message AccessMesosLog {
    // Subjects: HTTP Username.
    required Entity principals = 1;

    // Objects: Given implicitly. Use Entity type ANY or NONE to allow or deny
    // access.
    optional Entity logs = 2;
  }
{code}

> Improve error handling when parsing acls.
> -----------------------------------------
>
>                 Key: MESOS-5588
>                 URL: https://issues.apache.org/jira/browse/MESOS-5588
>             Project: Mesos
>          Issue Type: Improvement
>            Reporter: Joerg Schad
>            Assignee: Joerg Schad
>
> During parsing of the authorizer errors are ignored. This can lead to 
> undetected security issues.
> Consider the following acl with an typo (usr instead of user)
> {code}
>    "view_frameworks": [
>                   {
>                     "principals": { "type": "ANY" },
>                     "usr": { "type": "NONE" }
>                   }
>                 ]
> {code}
> When the master is started with these flags it will interprete the acl int he 
> following way which gives any principal access to any framework.
> {noformat}
> view_frameworks {
>   principals {
>     type: ANY
>   }
> }
> {noformat}



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

Reply via email to