Nimble directory + auth + SSO services for your {web} and {cloud} apps

Nimbus Directory Services

JsonSSO Specification

Lightweight JSON-RPC web service

JsonSSO is a lightweight JSON-RPC 2.0 web service for single sign-on (SSO) and shared session management. It accepts requests over HTTP(S) POST.

Json2Ldap

JsonSSO utilises a Json2Ldap web service instance to authenticate users against an LDAP v3 compatible directory. Other types of user stores (such as SQL DBs) are not directly supported.

Upon successful user login JsonSSO clients may be optionally provided with an LDAP connection (handled by the Json2Ldap web service). This connection, bound (authenticated) as the user, allows clients to query the LDAP directory, to retrieve various information about the user and perform other authorised operations, such as password change.

Web API

JsonSSO handles JSON remote procedure call (RPC) requests for login, logout and shared session management.

Login and logout Session information Session refresh
Logout callbacks Administration Web service information

Deployment

JsonSSO is packaged as a standard web application archive (WAR) ready for immediate deployment in a Java servlet container, such as the popular open source Apache Tomcat server.

Configuration

JsonSSO allows for comprehensive configuration by a set of parameters specified in the standard WEB-INF/web.xml web app descriptor file. See the JsonSSO configuration for details.

User identifier Client interface
Session settings Logout callbacks
Json2Ldap details LDAP server details
Administrator details User DN resolution
Search user details
Logging Cross-Origin Resource Sharing (CORS)

Logging

JsonSSO uses the popular log4j utility. Here are the event types that can be selectively logged (at various levels):

Logging is configured through the WEB-INF/log4j.properties file.

System requirements and dependencies

JsonSSO requires a web server conforming to the Java servlet specification, such as Apache Tomcat or Jetty:

User store and authentication:

All package dependencies are included in the JsonSSO WAR file for convenience.

Change log