Custom ID Provider against Couchbase Server

Enonic version: 6.13.1
OS: Centos 6

Hi,

I have users in Couchbase Server, and would like to create a custom ID provider that authenticates users against users in Couchbase.
In enonic I have a java class that returns all users fetched from couchbase. The authentication would be done against this list of users.
Could you point me some direction to start creating this provider?

Thanks for any help.

Hi!

The simplest way to do this is probably to have a look at the source code for the LDAP idprovider. https://github.com/enonic/app-ldap-idprovider

App is also availabe on Enonic Market

Basically, the flow is

  • validate credentials against your couchbase server
  • If valid - > Check if the user already exists in xp userstore
  • If it exists optionally update it
  • if it does not exist, create it
    initiate user session with auth.login()

The basic flow is seen here: https://github.com/enonic/app-ldap-idprovider/blob/master/src/main/resources/idprovider/idprovider.js

Additionally, you need to deal with UI ofcourse :slight_smile:
Hoping this helps…

2 Likes