Feature #25140

[API] authentication with JSON Web Tokens

Added by Vincent Robert almost 6 years ago. Updated over 4 years ago.

Status:NewStart date:
Priority:NormalDue date:
Assignee:-% Done:


Category:REST API
Target version:-


Currently, the API only accepts two ways to authenticate users:
- HTTP Basic authentication (logins and passwords are sent with each request)
- API key

We could secure this process and make it easier to use.
Allowing JWT (JSON web token) authentication could be a great improvement.


#1 Updated by Serguei Okladnikov almost 6 years ago

Vincent Robert wrote:

We could secure this process and make it easier to use.

Whoud you like to secure api calls?
Or You want to rewrite front panel working process too?

#2 Updated by Vincent Robert almost 6 years ago

Hi Serguei,
I am just talking about API calls here. I could work on this feature, but I would like to know the opinion of core contributors first.

#3 Updated by Jaap de Haan over 4 years ago

Good point. I would go so far and also allow this not only for API calls but also for normal UI as well (enabling SSO use cases via JWT for example)

#4 Updated by Enziin System over 4 years ago

I think JWT is necessary.

Using the API key will require more actions, which is to force the user to create a key, then copy the API key into their application.

JWT authentication is simply using username/password

When we embed Redmine API into the mobile app, then JWT must be used.

If you use Redmine core in multi-million users application, then each request from the client on the mobile or the desktop and it will cause Redmine to query the Token table in the DB.

It is not effective and it will overload.

Also available in: Atom PDF