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

Support Couchbase #57

Closed
nynymike opened this issue Oct 25, 2017 · 2 comments

Comments

@nynymike
Copy link
Contributor

commented Oct 25, 2017

Current Gluu version supports only LDAP as persistent mechanism. We need to add support for additional types of persistent storage.

Here are initial steps how to do this:

  1. Add new library oxFilter to oxCore to allow remove direct dependency in oxAuth/oxTrust/etc to UnboundId SDK filter classes.
  2. Improve oxLdap to support oxFilter instead of UnboundID SDK filter
  3. Replace in oxAuth/oxTrust and other projects UnboundID SDK filter with oxCore Filters

Add new configuration files:

  1. Add new properties file ox.properties. The purpose of this file to specify type of persistent storage. Also it should contains application specific setting which mandatory for all applications.
@yurem

This comment has been minimized.

Copy link
Contributor

commented Oct 26, 2017

In our persistence layer we uses generic java interface javax.persistence.EntityManager . Our LdapEntryManager extends it. I think we need to follow same rule in all other persistence mechanism.
These steps we need to do next:

  1. Extract all CRUD methods which we uses in LdapEntryManager into interface. Current LdapEntryManager should implements it.
  2. Create ox-couchbase.json or ox-couchbase.properties. I think it's better to use json becuase we might need to provide some mappingm extra configs, etc..
    create factory like 'CacheProviderFactory' which uses CDI to create right instance of EntryManger
  3. Implement CouchbaseEntryManager.

@yurem yurem modified the milestones: CE 3.1.2, CE 3.2.0 Nov 7, 2017

@yurem

This comment has been minimized.

Copy link
Contributor

commented Jun 12, 2018

The main part is done. oxCouchbase implements CouchbaseEntryManager which has same base interface with LdapEntryManager. Now we need to try to run oxAuth/oxTrust with this new persistence machanism.

This is rest of tasks from which we need to implement:

  1. oxCouchbase should support LDAP CRYPT and SHA authentication mechanism #77
  2. oxCouchbase should use SSL to connect server #78
  3. Update oxAuth/oxTrust to use oxLdap/oxCouchbase #79
  4. In setup script: allow selection of LDAP or Couchbase as the database #360
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.