[lkml]   [2011]   [Jan]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Subjectuserns: targeted capabilities v3
    Following is the next version of my user namespace patchset.

    The core of the set is patch 2, originally conceived and
    implemented by Eric Biederman. The concept is to target
    capabilities at user namespaces. A task's capabilities are
    now contextualized as follows (previously, capabilities had
    no context):

    1. For a task in the initial user namespace, the calculated
    capabilities (pi, pe, pp) are available to act upon any
    user namespace.

    2. For a task in a child user namespace, the calculated
    capabilities are available to act only on its own or any
    descendent user namespace. It has no capabilities to any
    parent or unrelated user namespaces.

    3. If a user A creates a new user namespace, that user has
    all capabilities to that new user namespace and any of its
    descendents. (Contrast this with a user namespace created
    by another user B in the same user namespace, to which this
    user A has only his calculated capabilities)

    All existing 'capable' checks are automatically converted to
    checks against the initial user namespace. The rest of the
    patches begin to enable capabilities in child user namespaces
    to setuid, setgid, set hostnames, kill tasks, and do ptrace.

    My next step would be to re-introduce a part of a several year
    old patchset which assigns a userns to a superblock (and hence
    to inodes), and grants 'user other' permissions to any task
    whose uid does not map to the target userns. (By default, this
    will be all but the initial userns)


     \ /
      Last update: 2011-01-10 22:13    [W:0.020 / U:2.200 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site