Class PermissionScope


  • public final class PermissionScope
    extends Object
    Represents the model class Permission acts on and scoped to.

    This abstraction primarily controls what permissions are configurable at what level.

    For example, "create an item" is scoped to ItemGroup in the sense that it "acts" on the item group object (and therefore it won't make sense to control this permission at more finer scope, such as Run.)

    Every Permission belongs to a set of scopes. Each scope is to be represented as a constant. This class defines a few constants, but plugins can define their own.

    Since:
    1.421
    Author:
    Kohsuke Kawaguchi
    • Field Detail

      • modelClass

        public final Class<? extends ModelObject> modelClass
        Domain model type that approximates this scope.
      • JENKINS

        public static final PermissionScope JENKINS
        Permissions scoped to the entire Jenkins instance.
      • ITEM_GROUP

        public static final PermissionScope ITEM_GROUP
        Permissions scoped to containers of Items.
      • ITEM

        public static final PermissionScope ITEM
        Permissions scoped to Items (including Jobs and other subtypes)
    • Method Detail

      • isContainedBy

        public boolean isContainedBy​(PermissionScope s)
        Returns true if this scope is directly or indirectly contained by the given scope.

        A scope always contains itself.