Class BatchControlPermissions

java.lang.Object
io.jenkins.plugins.batchcontrol.security.BatchControlPermissions

@Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) public class BatchControlPermissions extends Object
The five plugin permissions (SPEC item 2), exposed to Matrix/Role authorization strategies as the "Batch Control" group.

Implications: MANAGE is implied by Overall/Administer; every other permission is implied by MANAGE, so administrators pass all checks.

Restricted (S-10): other plugins interact with these permissions through the authorization-strategy screens, not by referencing this class.

  • Field Details

    • GROUP

      public static final PermissionGroup GROUP
      The "Batch Control" permission group shown on the authorization matrix screen.

      D-41: the group id is pinned to "BatchControl" via the three-argument PermissionGroup constructor, so the permission names JCasC and scripts use (e.g. BatchControl/Request) are stable and independent of the display title (Messages._BatchControlPermissions_Title(), which stays "Batch Control"). Stored matrix entries key on Permission.getId(), which is unaffected by the group id.

    • MANAGE

      public static final Permission MANAGE
      Manage the plugin: global configuration, approver list, revoking grants.
    • REQUEST

      public static final Permission REQUEST
      Create run requests. D-38a: assignable per job or folder as well as globally (scope ITEM), since it alone decides who may ask for a run; run requests check it on the requested job.
    • APPROVE

      public static final Permission APPROVE
      Approve or reject requests.
    • REQUEST_GRANT

      public static final Permission REQUEST_GRANT
      Request temporary change permissions (JIT).
    • VIEW_HISTORY

      public static final Permission VIEW_HISTORY
      View history screens and CSV exports.
  • Constructor Details

    • BatchControlPermissions

      protected BatchControlPermissions()
  • Method Details

    • initialize

      @Initializer(after=PLUGINS_STARTED) public static void initialize()
      Forces this class to initialize during Jenkins startup so the permission group is registered before any authorization strategy screen enumerates permission groups.