Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: LDAP Backend #122

Closed
ImNtReal opened this issue Aug 9, 2018 · 9 comments
Closed

Feature request: LDAP Backend #122

ImNtReal opened this issue Aug 9, 2018 · 9 comments
Labels
enhancement New feature or request help wanted Extra attention is needed low priority Won't fix anytime soon, but will accept PR if provided

Comments

@ImNtReal
Copy link

ImNtReal commented Aug 9, 2018

It would be awesome if I could integrate this with my existing LDAP server, so my account to get my master password would be the same that I use to login to the rest of the services I'm hosting on the same server.

@mprasil mprasil added the enhancement New feature or request label Aug 9, 2018
@dani-garcia
Copy link
Owner

I think this is in the same position as #94, if someone can PR an implementation that isn't overly complex, I'll be happy to merge it, but I don't plan on doing this myself.

@mprasil mprasil added help wanted Extra attention is needed low priority Won't fix anytime soon, but will accept PR if provided labels Aug 10, 2018
@dani-garcia
Copy link
Owner

To keep the issue tracker more focused, I'm closing this issue in favor of the meta issue at #246.

@MrSnoozles
Copy link

In which way would LDAP get implemented? The official server is using the directory connector to synchronize accounts. The connector is getting user and group data from the domain and sends them to /api/organizations/<id>/import

The data getting sent looks as follows:

image

So I guess the import-endpoint should get implemented to stay compatible with the official server, right? Or would this be solved differently, e.g. with LDAP authentication directly integrated into the server?

@dani-garcia
Copy link
Owner

Huh, I didn't know that the directory connector existed, I though that was integrated in the server. I would prefer to keep compatible with the official server yes.

In this case, the connector probably makes LDAP easier to implement, but how does it work exactly? Does that create the users or do they need to exist already? Is the functionality just adding and removing users from the org or is there more?

Groups at the moment are not implemented, only collections, so that's something to have in mind, but we could have a version that only handles users.

I imagine an implementation of this would be similar to the methods send_invite, confirm_invite and delete_user that we already have to handle adding and removing users from organizations. This is in src/api/core/organizations.rs.

@MrSnoozles
Copy link

MrSnoozles commented Dec 13, 2018

I think it should create and delete the users too, as one of the points of LDAP/ Active Directory is, that you set up users only once for all your applications. I'm going to try it with the official server and let you know.

@dani-garcia
Copy link
Owner

That would make sense, but the data sent doesn't contain a passwordhash or anything and we need that to create the account, so if it works like that then the login step has to be different.

@MrSnoozles
Copy link

MrSnoozles commented Dec 13, 2018

I just checked the official implementation. It's just adding and removing people to/from the organization depending on the email address. They have to exist in the system before and are not getting created.

@mprasil
Copy link
Contributor

mprasil commented Dec 13, 2018

I assume they appear as accepted and you still need to confirm them in the org interface?

@ViViDboarder
Copy link
Contributor

FYI: A form of LDAP syncing has been added to the wiki.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed low priority Won't fix anytime soon, but will accept PR if provided
Projects
None yet
Development

No branches or pull requests

5 participants