How to do it...

To restrict access to projects based on who can or cannot report criterion, you first need to enable a special permission type, as follows:

  1. Open the permission-types.xml file from the JIRA_INSTALL/atlassian-jira/WEB-INF/classes directory in a text editor.
  2. Locate the following lines, and uncomment the reportercreate permission type, as follows:
        <!-- Uncomment & use this permission to show only projects
        where the user has create permission and issues
        within that where they are the reporter. -->

        <!-- This permission type should only ever be assigned to
        the "Browse Projects" permission. -->

        <!-- Other permissions can use the "reporter" or "create"
        permission type as appropriate. -->

        <!-- <type id="reportercreate" enterprise="true">
          <class>com.atlassian.jira.security.type

.CurrentReporterHasCreatePermission</class> </type> -->
  1. Restart Jira for the changes to apply.

Once the reportercreate permission type is enabled, a new Reporter option (which shows only projects with create permissions) is displayed while working with permission schemes, as shown in the following screenshot: 

Projects with permission schemes that use this option for the Browse Projects permission are viewable only by users who can create issues in them.