Json2Ldap

{{Infobox software

| name = Json2Ldap

| logo = Json2Ldap.png

| screenshot =

| caption =

| developer = NimbusDS

| latest release version = 3.0.2

| latest release date = {{release_date|2014|04|08}}

| latest preview version =

| latest preview date =

| operating_system = Cross-platform

| platform = Java

| genre = Middleware

| license = Proprietary

| website = [http://connect2id.com/products/json2ldap http://connect2id.com]

}}

Json2Ldap is a JSON-to-LDAP gateway software, written in Java and developed by Nimbus Directory Services.{{cite web|url=http://blog.dzhuvinov.com/?p=791|title=Announcement of Nimbus Directory Services taking over Json2Ldap development|access-date=2011-08-04|archive-date=2012-03-28|archive-url=https://web.archive.org/web/20120328125719/http://blog.dzhuvinov.com/?p=791|url-status=dead}} It provides a JSON-RPC 2.0 interface for web clients to access one or more LDAP v3 - compatible directories.{{cite web|url=http://www.networkworld.com/newsletters/2010/071910id2.html|title=Network World, Security Identity Management Alert, 2010-07-20|date=20 July 2010 }} The Json2Ldap web API supports the standard LDAP directory requests as well as several extended operations and controls.{{cite web|url=http://connect2id.com/products/json2ldap/web-api|title=Json2Ldap web API}}

Background

Json2Ldap was initially conceived as a lightweight JSON alternative to existing XML-based gateways for providing directory service access to web browsers. Its first official release was in May 2010.{{cite web|url=http://blog.dzhuvinov.com/?p=96|title=Give your LDAP server a JSON front-end|access-date=2011-08-04|archive-date=2012-03-28|archive-url=https://web.archive.org/web/20120328125751/http://blog.dzhuvinov.com/?p=96|url-status=dead}} In May 2011 development of the software was passed to Nimbus Directory Services.{{cite web|url=http://blog.dzhuvinov.com/?p=791|title=Announcement of Nimbus Directory Services taking over Json2Ldap development|access-date=2011-08-04|archive-date=2012-03-28|archive-url=https://web.archive.org/web/20120328125719/http://blog.dzhuvinov.com/?p=791|url-status=dead}}

Interface specification

Json2Ldap provides a JSON web interface for establishing LDAP client connections to one or more directory servers.

Client web interface:

Supported standard LDAP directory operations (as per RFC 4510):

  • Bind (authenticate): simple, plain SASL, digest MD5 SASL, anonymous
  • Search
  • Compare
  • Add a new entry
  • Delete an entry
  • Modify an entry
  • Modify distinguished name (DN)
  • Unbind

Supported extended LDAP operations:

  • Password Modify (RFC 3062)
  • StartTLS (RFC 4511)
  • Who am I (RFC 4532)

Supported extended LDAP controls:

  • Authorisation identity bind control (RFC 3829).
  • Server-side sorting of search results (RFC 2891).
  • Simple paged results (RFC 2696).
  • Virtual-list-view search control (draft-ietf-ldapext-ldapv3-vlv-09)
  • Sub-tree delete (draft-armijo-ldap-treedelete-02).

Non-standard extensions:

Example messages

=Example request message=

Example directory search request:

{

"method" : "ldap.search",

"params" : { "CID" : "096032ca-ca91-47eb-a366-143832ff4a26",

"baseDN" : "ou=people,dc=my,dc=org",

"scope" : "SUB",

"filter" : "(givenName=Alice)" },

"id" : "0001",

"jsonrpc" : "2.0"

}

=Example response message=

Example directory search response:

{

"result" : { "objectClass" : [ "top", "person", "inetOrgPerson" ],

"uid" : [ "alice" ],

"mail" : [ "alice@wonderland.net" ],

"sn" : [ "Kingsleigh" ],

"cn" : [ "Alice Kingsleigh" ],

"initials" : [ "AK" ],

"mobile" : [ "+44 755 123 456" ] },

"id" : "0001",

"jsonrpc" : "2.0"

}

System requirements

Json2Ldap is distributed as a Java web application archive (WAR) for deployment in a Java servlet container.{{cite web|url=http://connect2id.com/products/json2ldap/datasheet|title=Json2Ldap system requirements}}

See also

References