Is it possible to provide LDAP-compatible data through the REST API without an LDAP server?

Let me first say that I know almost nothing about LDAP, and this question is more conceptual in nature than anything else. Since this is a long post, here is the question in it is the simplest form:

how can I easily identify contact details in an existing SQL Server database for LDAP clients?

SCENARIO

The organization in which I work has developed a very simple internal CRM system - in fact, it is more an illustrious contact management system than CRM, but full contact information, however, and now they want to easily identify all the contact information to other desktop and mobile clients, such as Outlook and / or iOS devices, and I was tasked with figuring out how to do this.

The first thing I did was open Outlook and see which books for Internet addresses you can add; in Outlook 2007, the only option I see is LDAP. Then I looked at the iOS device and also supported LDAP address books. So it looks like LDAP is what is needed to achieve this ...

LDAP STUDY

As said at the beginning, I know almost nothing about LDAP and research for this purpose has not made me very far. Of course, I do not want to configure the entire LDAP server, and I do not need LDAP security, etc. (At least, as far as I understand, I am not doing this), all I have to do is expose the contact information from the existing CRM database β€œLDAP path”.

The consensus that I think I see in my research is to install an LDAP server, such as OpenLDAP, and configure it to use SQL Server (i.e. the existing CRM database) as a backup storage, which allows efficient publishing database records to LDAP clients. This seems too complicated, and I hope there is an easier way to open contact records in LDAP form.

THE REST IDEA

The idea that I have - which looks like a lost reason, is to expose each user's contacts using a simple REST (or REST-like) API that returns contact information in LDAP form that can be used by Outlook, iOS, and any another client / device that supports LDAP.

The ultimate goal is to tell individuals in my organization to open Outlook or their iOS device settings and enter a URI as easy as:

https://www.ourinternalcrm.com/{username}/contacts

AM CAN I BE MY TIME?

Is it even remotely possible and worth exploring further, or will I skip the entire LDAP point and method of exposing data in LDAP form?

If possible, can someone help me point me in the right direction? I need to implement all this using C # and (most likely) WCF.

+6
source share
4 answers

LDAP is a protocol in itself and is not an HTTP protocol or other web service protocol.

If you want to create an LDAP server that will be more complex than using the existing LDAP server technology.

You can implement an Active Directory Server (ADAM), now called Active Directory Lightweight Directory Services (AD LDS), and create an application or synchronization service to click on the contact information, thereby eliminating the need to create one.

+3
source

LDAP already has a well-defined URL filter syntax, just use this. See RFC 4516 .

+2
source

There is already a specification for this DSML . This is mainly the XML markup of the LDAP data model, as well as the LDAP operations and their semantics. Some of the LDAP servers support this out of the box or through libraries, as XML is also useful as an exchange format.

0
source

So, to clarify, are you trying to provide data that is on the Apache DS LDAP server through REST, as a result of which the RESTFul API is located as a server service on another server (Tomcat, Weblogic, etc.)?

The interesting part I found is that Apache LDAP has a nice search and retrieval function through the JAVA API on its website - very intuitive and easy to implement. But I have the same problem, and I did not find a solution to integrate the REST API for data allocation.

Some of the problems that I discovered are those related to trying to connect Tomcat Server to the Apache LDAP server so that it can serve data using the @GET method.

I would welcome if anyone solves this problem in order to post it, since there is no Internet anywhere for that.

0
source

Source: https://habr.com/ru/post/897275/


All Articles