iCR for Python User Guides
iCR for Python 3.0.2
iCR for Python 3.0.2
  • Table of contents
    • Introduction
    • Overview
    • Getting Started
      • Installing iCR for Python
      • Managing your service
        • Opening Ports
      • Authorizing Access to Your Source Code
        • Authenticating GitHub Access with a Cloud-Based VCS Repository Service
          • Authenticating GitHub Access with a Private VCS Repository
        • Authenticating GitLab Access with a Cloud-Based VCS Repository
          • Authenticating GitLab Access with a Private VCS Repository
        • Authenticating Bitbucket Access with a Cloud-Based VCS Repository
          • Authenticating Bitbucket Access with a Private VCS Repository
          • Setting Bitbucket Server Credentials in the Navigator
    • Using the Navigator
      • Connecting to the Navigator
      • Setting your private passphrase
      • The Navigator top banner
      • The Analysis Engine status
      • Selecting Your Source Code
        • Using a cloud-based VCS
        • Selecting your branch
        • Using a private VCS
        • Using a local project
        • Setting the scope of your analysis
      • Integrating with your bug tracking system
        • Integrating with Jira - Define Your Project
        • Integrating with Jira - Authorizing Access for iCR
        • Integrating with Jira - Connecting with iCR
    • Using the Analysis Engine
      • Initiating an analysis
      • Monitoring the analysis
      • Interrupting the analysis
    • Reviewing your results
      • Reviewer summary and filters
      • Filter by Directory pane
      • Filter by Category pane
      • Reviewing a fix
      • Accepting a fix
        • Accepting a fix when integrated with your bug system
      • Rejecting a fix
        • Rejecting a fix when integrated with your bug system
      • Undoing a fix
        • Undoing a fix when integrated with your bug system
      • Rejected fix history
      • Providing feedback
      • Applying the fixes
      • Cases needing manual attention
      • Capturing results for printing or sharing
      • Ending a reviewer session
    • When you are complete
    • Appendix – List of supported fixers
    • Appendix – Example Summary Report
    • Appendix - Sample Bug Listing
Powered by GitBook
On this page
  1. Table of contents
  2. Using the Navigator
  3. Integrating with your bug tracking system

Integrating with Jira - Authorizing Access for iCR

PreviousIntegrating with Jira - Define Your ProjectNextIntegrating with Jira - Connecting with iCR

Last updated 1 year ago

To be able to create new Jira issues from the results of an iCR analysis, the iCR service requires authorization from the developers to be able to access the project(s) that was (were) created for use with iCR.

This chapter outlines the steps needed to authorize access to your Jira project from iCR.

In order to create and configure an OAuth app for iCR, you must use the Atalssian Developer Console. Assuming that you have already created a new Jira project, we assume that you remain logged into the Atlassian platform. From the Home page, here is how to reach the Developers' Console:

  • From that Home page, click on the For teams from the top menu to reveal the options

  • From the options, look to the column on the right to see the Developers option and select it

  • That brings you to the Developer Dashboard where you can click on the Resources menu at the top

  • From that set of options, look to the right column again where you can click on Developer console to reach the place where you can authorize a new OAuth app

These steps are illustrated in the video below:

Once at the Developers' console you will see a display of all apps that you have connected to Jira including any other OAuth apps that you previously configured.

We will authorize iCR here. To accomplish that, execute these steps. You can see them used in the video following this description.

  • To add a new app to authorize iCR, begin by clicking on the Create menu pulldown at the top right of the display

  • That reveals 2 options for adding apps. Choose the option labeled OAuth 2.0 integration

  • That will bring up the OAuth creation window. Here you name your app. We will also name this iCR-Bug-Tracking for consistency. This app name does not need to be the same as for the Jira project but we named them the same here to make it easier to see the associations

  • Note that Atlassian requires you to be familar with their Developer terms before continuing. Assuming that you are OK with their terms, click the box to be able to continue

  • After agreeing to the terms, click Create to instantiate a new OAuth app on behalf of iCR

That will bring you to the window where you can customize the properties that you need to have to allow iCR to interact securely with Jira. You will need to set some API permissions, authorize the iCR URL to permit access to Jira, and some settings to provide you with the security strings that you will need later for mating iCR with Jira. These are the steps to configure your OAuth app:

  • We will set the permisisons first. From the menu at the left of the page, click on Permissions to take you to the page where we configure the specific API Permissions that iCR requires

  • We will need the User identitity API. Click on Add to enable that. The default configuration for that is fine so we do not need to go further with this API

  • We also need the Jira API. Again, click the Add button which becomes a Configure button. Click on that to specifiy the exact Jira APIs that iCR needs to have enabled

  • This brings up an extended list of API sets. Since we need to customize this, we click on the Edit Scopes button at the right of that page to allow us to select the 5 API sets that we will be using with iCR

  • Click the boxes for the 5 API sets we use:

    • View Jira issue data

    • Manage project settings

    • Manage Jira global settings

    • View user profiles

    • Create and manage issues

  • Once they are all selected, click on Save to record these choices

  • That completes the permissions configuration. Next is to set up the authorization information. Referring back to the menu on the left of the page, click on Authorization

  • That brings you to the Authorization page where you click on Add to configure the URL to iCR

  • In the box labeled Callback URL enter the URL of the iCR server for which you want to allow access to Jira. Since Jira requires a secure channel between iCR and itself, the URL begins with https://, followed by the IP address of the server, followed by the port :3001, followed by the string /login/jira/return. Using the example in the video, a sample URL would look like

    • https://23.239.4.6:3001/login/jira/return

  • Once entered, click on Save changes to capture it

  • The final step to configure the OAuth app is to select Settings from the menu on the left

  • In Settings, the name of the OAuth app is set already and you can add a description of why this OAuth app was configured

  • Finally, click on Save changes to complete the process

  • It is very important to note that at the bottom of the Settings page is a box labelled Authentication details. There are two values here:

    • A Client ID which uniquely identifies the User who authorized this app; and

    • A Secret string that is used to secure the communication between iCR and Jira

All of the above steps can be viewed in the following video:

Both the Client ID and Secret will need to be confgured in iCR to associate iCR with this Jira app. That is described in . You may copy them now and save them away for later or you can always return here to copy them again.

Integrating with Jira - Connecting with iCR