I have several Google Sheet apps that use the Jira REST API to access data. I make the tool freely available so there are people using them with both Jira Cloud and Jira Server. All the tools currently use Basic authentication which isn't the most secure. For Jira Cloud it isn't so much a problem because people can just use API tokens which makes it real easy. However, for people using Jira Server API tokens are not an option.
I want to implement oAuth 2.0 authentication in the tools so Jira Server users have a more secure mechanism for authentication. I also need to implement it because a number of those users use SSO which doesn't work with Basic authentication. The Jira instance I develop against is Jira Cloud. It doesn't seem that JIra Cloud provides me a way of setting up oAuth 2.0 access so I that I could develop against it. Am I wrong in that understanding?
Thanks in advance
You can use the add-on mO API Token/OAuth Authentication for Jira to use either OAuth 2.0 or API Tokens to authenticate your REST APIs.
It's really easy to set up with any other OAuth provider which your users might be using for SSO. You can use the guides provided on the link below to set it up with any OAuth provider:
Full disclosure, I work for miniOrange and I am the lead developer for this app. I hope this provides the answer you're looking for. Also, if you have any questions regarding API authentication, I'll be more than happy to help
To be honest, I never implemented the solution that you are looking for. However, by making some research apparently, it seems that OAuth 2.0 is not yet supported by Jira Software, but it is supported by Jira Core and Jira Service Desk REST API endpoints.
I recommend checking the documentation below to clarify more about it:
Could you please check the documentation above and let me know if it helps?
The Jira REST API does not support oAuth 2.0. It does support oAuth 1.0. After a lot of trial and error I was able to figure out how to make it work.. I created a Medium post that explains everything start to finish and provides an example implementation using Google App Scripts