docs: public final void process() throws IOException, ServletException {
          if(permission!=null)
              try {
                  if(subject==null)
                      throw new AccessDeniedException("No subject");
                  subject.checkPermission(permission);
              } catch (AccessDeniedException e) {
                  // if the user has hudson-wide admin permission, all checks are allowed
                  // this is to protect Hudson administrator from broken ACL/SecurityRealm implementation/configuration.
                  if(!Jenkins.getInstance().hasPermission(Jenkins.ADMINISTER))
                      throw e;
              }
  
          check();
      }