Custom Backend Documentation/Sample

Tagged: 

This topic has 5 replies, 3 voices, and was last updated 2 months ago by zrizvi.

  • Author
    Posts
  • #28455
     zrizvi
    Participant

    Hello,
    I am looking into writing a custom backend for DS 7.0.1, but I am having trouble finding documentation on the topic. I did find the documentation regarding Plugins and the API for Pluggable Backends, but I was wondering if there is something more detailed on this topic. Perhaps a sample pluggable backend to use as a template?

    I was able to work with the MemoryBackend, found in the OpenDJ 2.6 source, as a starting point but I am not able to get it working with DS 7.0.1.

    Thank you,
    Zain

    #28456
     Ludo
    Moderator

    The backend API for DS 7.0 is not public and therefore not documented.It’s evolving as we’re adding new capabilities to the server.

    What kind of backend are you trying to develop?

    Kind regards,

    Ludo.

    #28457
     zrizvi
    Participant

    Thank you for the quick response Ludo. I was exploring the possibility of using various databases for storing the entries.

    Thank you,
    Zain

    #28458
     Ludo
    Moderator

    I’m afraid this is not an option. We’ve been through the evaluation multiple times. Directory Services requires an embedded key value store and BDB JE is the best available in Java.

    #28459

    I have a plugin that will publish to redis any DNs that are created/updated (we don’t delete entries). We use it to inform an application that a user’s ldap record changed via subscribing to the channel. As the application gets messages, it pulls the user info from opendj and updates the application internal user data table.

    Not sure if this would be of any value to you but you might be able to rework it into syncing a database with values. Let me know if you are interest in it.

    It was my first DS plugin and it hasn’t been stress tested for performance issues (like I wouldn’t use it with CTS) but one of the reasons I picked redis was it is pretty lightweight and I only drop the ldap dn on the publish channel.

    V/r,
    Gene

    #28460
     zrizvi
    Participant

    Hi Gene,
    Is this a “POST UPDATE” type plugin, which sends a message to your redis instance to do a pull request whenever there is an update? And it still uses BDB JE as the original storage for the LDAP entries?

    Thank you for the suggestion, I will explore this approach as well.
    Zain

Viewing 6 posts - 1 through 6 (of 6 total)

You must be logged in to reply to this topic.

©2021 ForgeRock - we provide an identity and access platform to secure every online relationship for the enterprise market, educational sector and even entire countries. Click to view our privacy policy and terms of use.

Log in with your credentials

Forgot your details?