I’m making a feature which would require my server plugin to communicate with an external service (which is also a project of mine, so I have control over it). Think of that service like a part of plugin functionality that I want to host myself for certain reasons.
What would be the best way to facilitate authentication between the plugin installed on a specific Jira Server instance and an instance of the external service ?
So for example an user installed my plugin on his/her Jira instance. I want my plugin to be able to send a request to my service, which in turn should be able to determine that in fact the request comes from the plugin and is tied to a specific Jira instance. Then the service should send a response. Ideally the whole process should not require user action - no registration process, key/license generation for the external service. User just installs the plugin and it works out of the box.
Do you have any ideas ? Does the whole thing make sense to you ? Is it even a valid idea ?