LDAP authentication #776

Open
opened 2025-10-09 19:00:58 +03:00 by OVERLORD · 23 comments
Owner

Originally created by @rpelissi on GitHub.

Hi and Happy New Year! I wish you the best for the new year!
Just to let you know that I love this solution. What could be even more cool is to add ldap authentification to the solution.

Thanks again for your work!
R.

Originally created by @rpelissi on GitHub. Hi and Happy New Year! I wish you the best for the new year! Just to let you know that I love this solution. What could be even more cool is to add ldap authentification to the solution. Thanks again for your work! R.
OVERLORD added the enhancement label 2025-10-09 19:00:58 +03:00
Author
Owner

@erwaan commented on GitHub:

I finally managed to add authentication by ldap, I will share my code for a pull request as soon as possible

@erwaan commented on GitHub: I finally managed to add authentication by ldap, I will share my code for a pull request as soon as possible
Author
Owner

@nickbe commented on GitHub:

We just added this to our list. Thanks for hinting.

@nickbe commented on GitHub: We just added this to our list. Thanks for hinting.
Author
Owner

@ikaruswill commented on GitHub:

+1 Would appreciate this feature as well.

By the ways, just a shoutout to you guys. Really appreciate the work you guys have put in to Planka. I like the fact that it's lightweight, snappy, and simple. I've tried many alternatives out there like Wekan, Kanboard, Taiga, Restyaboard, but all of them are either too heavy, or too specialized for a specific purpose (Software development for e.g.)

@ikaruswill commented on GitHub: +1 Would appreciate this feature as well. By the ways, just a shoutout to you guys. Really appreciate the work you guys have put in to Planka. I like the fact that it's lightweight, snappy, and simple. I've tried many alternatives out there like Wekan, Kanboard, Taiga, Restyaboard, but all of them are either too heavy, or too specialized for a specific purpose (Software development for e.g.)
Author
Owner

@erwaan commented on GitHub:

Hello everyone !
I am looking to add a connection functionality to an LDAP. I'm still figuring out how and where to implement it. I have some leads so far, in the files /client/src/actions/login.js or /client/src/actions/entry/login.js, or by using the functions defined in client/src/api/user.js

If anyone here has any leads for research or indications, I'm all ears.
Thank you !

EDIT (3rd June 2022) : Now I manage to make calls to a test ldap in the /server/api/controllers/access-token/create.js file. The goal would be to establish a connection with a user here, to return an access token needed to connect. This token is verified in /client/src/sagas/login/services/login.js.

@erwaan commented on GitHub: Hello everyone ! I am looking to add a connection functionality to an LDAP. I'm still figuring out how and where to implement it. I have some leads so far, in the files `/client/src/actions/login.js` or `/client/src/actions/entry/login.js`, or by using the functions defined in `client/src/api/user.js` If anyone here has any leads for research or indications, I'm all ears. Thank you ! EDIT (3rd June 2022) : Now I manage to make calls to a test ldap in the `/server/api/controllers/access-token/create.js` file. The goal would be to establish a connection with a user here, to return an access token needed to connect. This token is verified in `/client/src/sagas/login/services/login.js`.
Author
Owner

@swatcats commented on GitHub:

+1

@swatcats commented on GitHub: +1
Author
Owner

@kaptinlin commented on GitHub:

+1 for ldap support

@kaptinlin commented on GitHub: +1 for ldap support
Author
Owner

@nickbe commented on GitHub:

@erwaan Very nice!

@nickbe commented on GitHub: @erwaan Very nice!
Author
Owner

@astenmco commented on GitHub:

Here it is #268

@astenmco commented on GitHub: Here it is #268
Author
Owner

@kaptinlin commented on GitHub:

@erwaan look forward to the pull request.

@kaptinlin commented on GitHub: @erwaan look forward to the pull request.
Author
Owner

@erwaan commented on GitHub:

I will make the pull request with my company's account @astenmco

@erwaan commented on GitHub: I will make the pull request with my company's account @astenmco
Author
Owner

@astenmco commented on GitHub:

It's done ! :)

@astenmco commented on GitHub: It's done ! :)
Author
Owner

@13robin37 commented on GitHub:

Here it is #268

Any chance you can check that PR @astenmco? Nice work!

@13robin37 commented on GitHub: > Here it is #268 Any chance you can check that PR @astenmco? Nice work!
Author
Owner

@Vibeshibe commented on GitHub:

Really looking forward to LDAP support

@Vibeshibe commented on GitHub: Really looking forward to LDAP support
Author
Owner

@ghost commented on GitHub:

+1 for efforts !

@ghost commented on GitHub: +1 for efforts !
Author
Owner

@accade commented on GitHub:

Any news about this would be very appreciate.

@accade commented on GitHub: Any news about this would be very appreciate.
Author
Owner

@trivialkettle commented on GitHub:

Any news on this one?

@trivialkettle commented on GitHub: Any news on this one?
Author
Owner

@meltyshev commented on GitHub:

You have an option to work with OIDC provider backed by an LDAP database like the ldap user federation in keycloak

Thanks for the note! We’ve tested this setup, and it works. Adding native LDAP support directly to PLANKA is quite challenging at the moment, as it would require numerous configuration options and increase maintenance overhead.

Here’s a brief outline of how this can be done:

  1. Install Keycloak.

  2. In Keycloak, go to User Federation and add a new LDAP provider.

  3. Once LDAP is configured, create an OpenID client in Keycloak.

  4. Finally, configure OpenID in PLANKA using the official documentation:
    https://docs.planka.cloud/docs/configuration/oidc/.

@meltyshev commented on GitHub: > You have an option to work with OIDC provider backed by an LDAP database like the ldap user federation in keycloak Thanks for the note! We’ve tested this setup, and it works. Adding native LDAP support directly to PLANKA is quite challenging at the moment, as it would require numerous configuration options and increase maintenance overhead. Here’s a brief outline of how this can be done: 1. Install Keycloak. 2. In Keycloak, go to User Federation and add a new LDAP provider. 3. Once LDAP is configured, create an OpenID client in Keycloak. 4. Finally, configure OpenID in PLANKA using the official documentation: https://docs.planka.cloud/docs/configuration/oidc/.
Author
Owner

@meltyshev commented on GitHub:

Any news on this one?

We plan to add this, but it's hard for us to provide an exact date, we're solving major issues for v2 right now. There's a good chance it will be in the v2 release.

@meltyshev commented on GitHub: > Any news on this one? We plan to add this, but it's hard for us to provide an exact date, we're solving major issues for v2 right now. There's a good chance it will be in the v2 release.
Author
Owner

@pca-homsi commented on GitHub:

You have an option to work with OIDC provider backed by an LDAP database like the ldap user federation in keycloak

@pca-homsi commented on GitHub: You have an option to work with OIDC provider backed by an LDAP database like the ldap user federation in keycloak
Author
Owner

@mytrashon commented on GitHub:

Hello @meltyshev
I have set up Planka and Cloak in separate Docker containers and configured integration with AD LDAP. The issue is that Cloak runs over HTTPS using a self-signed certificate. As far as I understand, Planka connects to Cloak via an OIDC client, which has a hardcoded rule to reject self-signed certificates. When I try to connect, I get the following error:

planka [W] Error while initializing OIDC client: Error: self-signed certificate
planka [E] Sending 500 ("Server Error") response:

I successfully added my certificate via a Dockerfile in Alpine, but it didn’t help. Apparently, some component within Planka has its own certificate handling rules.
How can I fix this and make the OIDC client accept my self-signed certificate?

Thank you!

@mytrashon commented on GitHub: Hello @meltyshev I have set up Planka and Cloak in separate Docker containers and configured integration with AD LDAP. The issue is that Cloak runs over HTTPS using a self-signed certificate. As far as I understand, Planka connects to Cloak via an OIDC client, which has a hardcoded rule to reject self-signed certificates. When I try to connect, I get the following error: planka [W] Error while initializing OIDC client: Error: self-signed certificate planka [E] Sending 500 ("Server Error") response: I successfully added my certificate via a Dockerfile in Alpine, but it didn’t help. Apparently, some component within Planka has its own certificate handling rules. How can I fix this and make the OIDC client accept my self-signed certificate? Thank you!
Author
Owner

@meltyshev commented on GitHub:

Thank you very much, everything works fine.

Sorry for the additional bother, but could you please tell me why user management is not available in Planka for users created via SSO login? For example, I can't assign such a user as an administrator. Button is inactive.

Thank you!

Great to hear that it worked!

The role selector is inactive because PLANKA uses OIDC roles as the source of truth. However, you can disable role syncing by setting OIDC_IGNORE_ROLES=true, which will allow you to configure roles directly in PLANKA.

@meltyshev commented on GitHub: > Thank you very much, everything works fine. > > Sorry for the additional bother, but could you please tell me why user management is not available in Planka for users created via SSO login? For example, I can't assign such a user as an administrator. Button is inactive. > > Thank you! Great to hear that it worked! The role selector is inactive because PLANKA uses OIDC roles as the source of truth. However, you can disable role syncing by setting `OIDC_IGNORE_ROLES=true`, which will allow you to configure roles directly in PLANKA.
Author
Owner

@meltyshev commented on GitHub:

Hello @meltyshev I have set up Planka and Cloak in separate Docker containers and configured integration with AD LDAP. The issue is that Cloak runs over HTTPS using a self-signed certificate. As far as I understand, Planka connects to Cloak via an OIDC client, which has a hardcoded rule to reject self-signed certificates. When I try to connect, I get the following error:

planka [W] Error while initializing OIDC client: Error: self-signed certificate planka [E] Sending 500 ("Server Error") response:

I successfully added my certificate via a Dockerfile in Alpine, but it didn’t help. Apparently, some component within Planka has its own certificate handling rules. How can I fix this and make the OIDC client accept my self-signed certificate?

Thank you!

Hi! This might be resolved using the approach mentioned here (if you haven't tried it yet): https://github.com/plankanban/planka/issues/925#issuecomment-2441909192.

@meltyshev commented on GitHub: > Hello [@meltyshev](https://github.com/meltyshev) I have set up Planka and Cloak in separate Docker containers and configured integration with AD LDAP. The issue is that Cloak runs over HTTPS using a self-signed certificate. As far as I understand, Planka connects to Cloak via an OIDC client, which has a hardcoded rule to reject self-signed certificates. When I try to connect, I get the following error: > > planka [W] Error while initializing OIDC client: Error: self-signed certificate planka [E] Sending 500 ("Server Error") response: > > I successfully added my certificate via a Dockerfile in Alpine, but it didn’t help. Apparently, some component within Planka has its own certificate handling rules. How can I fix this and make the OIDC client accept my self-signed certificate? > > Thank you! Hi! This might be resolved using the approach mentioned here (if you haven't tried it yet): https://github.com/plankanban/planka/issues/925#issuecomment-2441909192.
Author
Owner

@mytrashon commented on GitHub:

Thank you very much, everything works fine.

Sorry for the additional bother, but could you please tell me why user management is not available in Planka for users created via SSO login?
For example, I can't assign such a user as an administrator. Button is inactive.

Thank you!

@mytrashon commented on GitHub: Thank you very much, everything works fine. Sorry for the additional bother, but could you please tell me why user management is not available in Planka for users created via SSO login? For example, I can't assign such a user as an administrator. Button is inactive. Thank you!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/planka#776