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/08/05 11:49] – [Supported Jira fields] 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 (Bearer) Authentication (Since Stages 7.9.10.0 / 7.10.1.0) ==== 
 + 
 +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. 
 + 
 +<code xml> 
 +<property name="authentication.type" value="bearer" /> 
 +<property name="bearer" value="NTkzMzQ1ODIyNTAwOtuxKyI7Q2dPtIVtSTr7+Viwg6H3" /> 
 +</code> 
 + 
 +==== 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: 
 + 
 +<code xml> 
 +<property name="authentication.type" value="oauth20" /> 
 +<property name="authentication.oauth20.granttype" value="password" /> 
 + 
 +<!-- URL to your OAuth 2.0 Token Endpiont --> 
 +<property name="authentication.oauth20.tokenendpoint" value="https://example.com/oauth/token" /> 
 + 
 +<!-- OAuth 2.0 Client Id --> 
 +<property name="authentication.oauth20.clientid" value="" /> 
 + 
 +<!-- OAuth 2.0 Client Secret --> 
 +<property name="authentication.oauth20.clientsecret" value="" /> 
 + 
 +<!--  OAuth 2.0 Scope --> 
 +<property name="authentication.oauth20.scope" value="" /> 
 + 
 +<!-- OAuth 2.0 (technical) user --> 
 +<property name="authentication.oauth20.user" value="" /> 
 + 
 +<!-- OAuth 2.0 password --> 
 +<property name="authentication.oauth20.password" value="" /> 
 +</code> 
 + 
 +==== 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)   * Description: ''targetType=""'' (Empty)
   * Text Field (single line): ''targetType=""'' (Empty)   * Text Field (single line): ''targetType=""'' (Empty)
Line 90: Line 143:
   * URL Field: ''targetType=""'' (Empty)   * URL Field: ''targetType=""'' (Empty)
   * Select List (single choice): ''targetType="selectList-singleChoice"''   * 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 (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)   * Assignee: ''target="assignee" targetType="user-singleChoice"'' (Only Jira Server, not Jira Cloud)
   * Reporter: ''target="reporter" 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"''   * 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**: **Be aware**:
Line 102: Line 164:
 Other Jira fields are not supported at the moment. Other Jira fields are not supported at the moment.
  
-==== Custom Endpoint (Optional) ====+===== 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. 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.
Line 109: Line 171:
 </code> </code>
  
-==== Proxy (Optional) ====+===== Proxy (Optional) =====
  
 You can specify a proxy server. You can specify a proxy server.
Line 120: Line 182:
 </code> </code>
  
-==== OAuth 2.0 Password Grant (Optional) ==== 
- 
-We support also OAuth 2.0 with Password Grant. To configure it there are different properties: 
- 
-<code xml> 
-<property name="authentication.type" value="oauth20" /> 
-<property name="authentication.oauth20.granttype" value="password" /> 
- 
-<!-- URL to your OAuth 2.0 Token Endpiont --> 
-<property name="authentication.oauth20.tokenendpoint" value="https://example.com/oauth/token" /> 
- 
-<!-- OAuth 2.0 Client Id --> 
-<property name="authentication.oauth20.clientid" value="" /> 
- 
-<!-- OAuth 2.0 Client Secret --> 
-<property name="authentication.oauth20.clientsecret" value="" /> 
- 
-<!--  OAuth 2.0 Scope --> 
-<property name="authentication.oauth20.scope" value="" /> 
- 
-<!-- OAuth 2.0 (technical) user --> 
-<property name="authentication.oauth20.user" value="" /> 
- 
-<!-- OAuth 2.0 password --> 
-<property name="authentication.oauth20.password" value="" /> 
-</code> 
  
-==== Custom Header (Optional) ====+===== 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.