This project is mirrored from https://gitee.com/mirrors/nomad.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
  1. 23 Mar, 2020 2 commits
    • Lang Martin's avatar
      csi: ACLs for plugin endpoints (#7380) · 2dc95485
      Lang Martin authored
      * acl/policy: add PolicyList for global ACLs
      
      * acl/acl: plugin policy
      
      * acl/acl: maxPrivilege is required to allow "list"
      
      * nomad/csi_endpoint: enforce plugin access with PolicyPlugin
      
      * nomad/csi_endpoint: check job ACL swapped params
      
      * nomad/csi_endpoint_test: test alloc filtering
      
      * acl/policy: add namespace csi-register-plugin
      
      * nomad/job_endpoint: check csi-register-plugin ACL on registration
      
      * nomad/job_endpoint_test: add plugin job cases
      2dc95485
    • Lang Martin's avatar
      csi: implement volume ACLs (#7339) · 4573cbee
      Lang Martin authored
      * acl/policy: add the volume ACL policies
      
      * nomad/csi_endpoint: enforce ACLs for volume access
      
      * nomad/search_endpoint_oss: volume acls
      
      * acl/acl: add plugin read as a global policy
      
      * acl/policy: add PluginPolicy global cap type
      
      * nomad/csi_endpoint: check the global plugin ACL policy
      
      * nomad/mock/acl: PluginPolicy
      
      * nomad/csi_endpoint: fix list rebase
      
      * nomad/core_sched_test: new test since #7358
      
      * nomad/csi_endpoint_test: use correct permissions for list
      
      * nomad/csi_endpoint: allowCSIMount keeps ACL checks together
      
      * nomad/job_endpoint: check mount permission for jobs
      
      * nomad/job_endpoint_test: need plugin read, too
      4573cbee
  2. 08 Oct, 2019 1 commit
    • Mahmood Ali's avatar
      acl: check ACL against object namespace · 7a387842
      Mahmood Ali authored
      Fix a bug where a millicious user can access or manipulate an alloc in a
      namespace they don't have access to.  The allocation endpoints perform
      ACL checks against the request namespace, not the allocation namespace,
      and performs the allocation lookup independently from namespaces.
      
      Here, we check that the requested can access the alloc namespace
      regardless of the declared request namespace.
      
      Ideally, we'd enforce that the declared request namespace matches
      the actual allocation namespace.  Unfortunately, we haven't documented
      alloc endpoints as namespaced functions; we suspect starting to enforce
      this will be very disruptive and inappropriate for a nomad point
      release.  As such, we maintain current behavior that doesn't require
      passing the proper namespace in request.  A future major release may
      start enforcing checking declared namespace.
      7a387842
  3. 12 Aug, 2019 1 commit
    • Danielle Lancashire's avatar
      acl: Add HostVolume ACLs · 065688da
      Danielle Lancashire authored
      This adds an initial implementation of ACLs for HostVolumes.
      
      Because HostVolumes are a cluster-wide resource, they cannot be tied to
      a namespace, thus here we allow similar wildcard definitions based on
      their names, tied to a set of capabilities.
      
      Initially, the only available capabilities are deny, or mount. These
      may be extended in the future to allow read-fs, mount-readonly and
      similar capabilities.
      065688da
  4. 12 Dec, 2018 1 commit
  5. 11 Dec, 2018 2 commits
    • Danielle Tomlinson's avatar
    • Danielle Tomlinson's avatar
      acl: Add support for globbing namespaces · 36d1045e
      Danielle Tomlinson authored
      This commit adds basic support for globbing namespaces in acl
      definitions.
      
      For concrete definitions, we merge all of the defined policies at load time, and
      perform a simple lookup later on. If an exact match of a concrete
      definition is found, we do not attempt to resolve globs.
      
      For glob definitions, we merge definitions of exact replicas of a glob.
      
      When loading a policy for a glob defintion, we choose the glob that has
      the closest match to the namespace we are resolving for. We define the
      closest match as the one with the _smallest character difference_
      between the glob and the namespace we are matching.
      36d1045e
  6. 13 Oct, 2017 1 commit
  7. 13 Sep, 2017 1 commit
  8. 04 Sep, 2017 4 commits