Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
77:process_feedback_jira [2021/07/29 10:11] fnpk77:process_feedback_jira [2024/02/15 00:00] (current) – external edit 127.0.0.1
Line 68: Line 68:
 </stages-config> </stages-config>
 </code> </code>
 +
 +===== Authentication =====
 +
 +There are different ways to authenticate with Jira Server. Most common are Basic Authentication and Personal Access Tokens (Bearer).
  
 ==== Basic Authentication ==== ==== Basic Authentication ====
Line 80: Line 84:
  
 === Jira Server === === Jira Server ===
-The ''user'' and ''password'' are the normal username and password of the user.+  * The ''user'' and ''password'' are the normal username and password of the user. 
 +  * [[https://confluence.atlassian.com/enterprise/disabling-basic-authentication-1044776464.html|Basic authentication must not be deactivated]]
 === Jira Cloud === === Jira Cloud ===
 In Jira cloud there are no usernames. The ''username'' is the mail address (e.g. ''user@example.com''). The **password is a API-Token** and not the password of the user. You can create a Token in your [[https://id.atlassian.com/manage-profile/security/api-tokens|Atlassian Account Management]]. In Jira cloud there are no usernames. The ''username'' is the mail address (e.g. ''user@example.com''). The **password is a API-Token** and not the password of the user. You can create a Token in your [[https://id.atlassian.com/manage-profile/security/api-tokens|Atlassian Account Management]].
  
-==== Supported Jira fields ==== +==== Personal Access Tokens (BearerAuthentication (Since Stages 7.9.10.0 / 7.10.1.0) ====
-  * Description: ''targetType=""'' (Empty) +
-  * Text Field (single line): ''targetType=""'' (Empty) +
-  * Text Field (multi line): ''targetType=""'' (Empty) +
-  * URL Field: ''targetType=""'' (Empty) +
-  * Select List (single choice): ''targetType="selectList-singleChoice"'' +
-  * User Picker (single user): ''targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud) +
-  * Assignee: ''targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud) +
-  * Reporter: ''targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud) +
-  * Components: ''targetType="components"''+
  
-**Be aware**: +Since Jira 8.14 it is possible to [[https://confluence.atlassian.com/enterprise/using-personal-access-tokens-1026032365.html|generate Personal Access Tokens]] to authenticate with Jira.
-  * If you choose **Select** or **Component** then the user entered values must be configured in Jira. Otherwise the ticket creation will fail. +
-  * If you choose **User Picker**, **Assignee** or **Reporter** then the users must be vald Jira user. Otherwise the ticket creation will fail. +
-  * To set the **Reporter** field it is [[https://community.atlassian.com/t5/Answers-Developer-Questions/Re-Assigning-a-reporter-when-creating-an-issue-with-rest/qaq-p/475645/comment-id/13300#M13300|mandatory to grant "Modify Reporter" to the technical user]]. Otherwise the ticket creation will fail.+
  
-Other Jira fields are not supported at the moment. 
- 
-==== Custom Endpoint (Optional) ==== 
- 
-If your Jira REST-Endpiont differs from the standard location, you can specify it. If your link to the Jira-API is for example like ''<nowiki>https://api.example.com/example/api/2/issue</nowiki>'' then you have to specify ''<nowiki>https://api.example.com/example/</nowiki>'' as value for this property. 
 <code xml> <code xml>
-<property name="jira.rest.endpoint" value="https://api.example.com/example/" /> +<property name="authentication.type" value="bearer" /> 
-</code> +<property name="bearer" value="NTkzMzQ1ODIyNTAwOtuxKyI7Q2dPtIVtSTr7+Viwg6H3" />
- +
-==== Proxy (Optional) ==== +
- +
-You can specify a proxy server. +
- +
-<code xml> +
-<property name="proxy.enabled" value="true" /> +
-<property name="proxy.type" value="https" /> +
-<property name="proxy.port" value="3128" /> +
-<property name="proxy.hostname" value="proxy.example.com" />+
 </code> </code>
  
 ==== OAuth 2.0 Password Grant (Optional) ==== ==== OAuth 2.0 Password Grant (Optional) ====
 +
 +**This is a very special use case for a specific API gateway and not a standard Jira feature.** 
  
 We support also OAuth 2.0 with Password Grant. To configure it there are different properties: We support also OAuth 2.0 with Password Grant. To configure it there are different properties:
Line 147: Line 127:
 </code> </code>
  
-==== Custom Header (Optional) ====+==== No Authentication (Since Stages 7.9.10.0 / 7.10.1.0) ==== 
 + 
 +**This is a very special use case for a specific API gateway and not a standard Jira feature.** 
 + 
 +If there should be no authentication with Jira you can configure it. You probably want to set a [[#custom-header-optional|Custom Header]]. 
 + 
 +<code xml> 
 +<property name="authentication.type" value="none" /> 
 +</code> 
 + 
 +===== Supported Jira fields ===== 
 +  * Description: ''targetType=""'' (Empty) 
 +  * Text Field (single line): ''targetType=""'' (Empty) 
 +  * Text Field (multi line): ''targetType=""'' (Empty) 
 +  * URL Field: ''targetType=""'' (Empty) 
 +  * Select List (single choice): ''targetType="selectList-singleChoice"'' 
 +  * Select List (multiple choices): ''targetType="selectList-multipleChoice"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * User Picker (single user): ''targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud) 
 +  * User Picker (multiple users): ''targetType="user-multipleChoice"'' (Since Stages 7.9.10.0 / 7.10.1.0, Only Jira Server, not Jira Cloud) 
 +  * Assignee: ''target="assignee" targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud) 
 +  * Reporter: ''target="reporter" targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud) 
 +  * Components: ''target="components" targetType="components"'' 
 +  * Radio Buttons: ''targetType="radio"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * Checkboxes: ''targetType="checkbox"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * Labels: ''targetType="labels"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * Affects Versions: ''target="versions" targetType="version-multipleChoice"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * Fix Versions: ''target="fixVersions" targetType="version-multipleChoice"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * Version Picker (single version):  ''targetType="version-singleChoice"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 +  * Version Picker (multiple versions): ''targetType="version-multipleChoice"'' (Since Stages 7.9.10.0 / 7.10.1.0) 
 + 
 +**Be aware**: 
 +  * If you choose **Select** or **Component** then the user entered values must be configured in Jira. Otherwise the ticket creation will fail. 
 +  * If you choose **User Picker**, **Assignee** or **Reporter** then the users must be vald Jira user. Otherwise the ticket creation will fail. 
 +  * To set the **Reporter** field it is [[https://community.atlassian.com/t5/Answers-Developer-Questions/Re-Assigning-a-reporter-when-creating-an-issue-with-rest/qaq-p/475645/comment-id/13300#M13300|mandatory to grant "Modify Reporter" to the technical user]]. Otherwise the ticket creation will fail. 
 + 
 +Other Jira fields are not supported at the moment. 
 + 
 +===== Custom Endpoint (Optional) ===== 
 + 
 +If your Jira REST-Endpiont differs from the standard location, you can specify it. If your link to the Jira-API is for example like ''<nowiki>https://api.example.com/example/api/2/issue</nowiki>'' then you have to specify ''<nowiki>https://api.example.com/example/</nowiki>'' as value for this property. 
 +<code xml> 
 +<property name="jira.rest.endpoint" value="https://api.example.com/example/" /> 
 +</code> 
 + 
 +===== Proxy (Optional) ===== 
 + 
 +You can specify a proxy server. 
 + 
 +<code xml> 
 +<property name="proxy.enabled" value="true" /> 
 +<property name="proxy.type" value="https" /> 
 +<property name="proxy.port" value="3128" /> 
 +<property name="proxy.hostname" value="proxy.example.com" /> 
 +</code> 
 + 
 + 
 +===== Custom Header (Optional) =====
  
 You can set custom header to the Jira-REST-Requests. You can set custom header to the Jira-REST-Requests.
Line 156: Line 192:
 </code> </code>
  
-==== Troubleshooting ====+===== Troubleshooting =====
  
 If the username/​password settings are not correct or the password is changed on the Jira side, but not in Stages, Jira might lock the account after a few tries. This will result in a "HTTP 403 Forbidden"​ error in stages.log. If the username/​password settings are not correct or the password is changed on the Jira side, but not in Stages, Jira might lock the account after a few tries. This will result in a "HTTP 403 Forbidden"​ error in stages.log.