Sneakycat CLE and LDIF Driver 0.91

4 Likes
over 9 years ago

Sneakycat CLE and LDIF Driver
Version: 0.91 beta (2020-07-11)
Use at your own risk.


What it is.
The CLE (Command Line Execute) and LDIF Driver is a simple driver that can be used to perform tasks on a Windows server using command line utilities or scripts OR import LDIF files into eDirectory.

It can be used as a subscriber only driver OR as a publisher only driver.

Subscriber only means that there is no useful functionality on the publisher channel except a driver heartbeat. You can't use the driver to pull data into IDM, so this driver can't replace the Novell Scripting driver.

Publisher only means that you shouldn't use the subscriber part if you are using the publisher part. The publisher channel can be used for import LDIF files into eDirectory through IDM.
This is done by activating the LDIF Publisher channel in the Driver Configuration.

The subscriber channel is primarily intended to ease the creation of home directories on Windows servers.

It can be used by installing the Remote Loader on a Windows file server and then installing this driver there. Any commands executed by the driver will be executed on that server using the rights that the Remote Loader service has. Since the driver is written in Java it also works on Linux.

There are two publisher channels, one is a simple heartbeat that does nothing else.
Then there is the LDIF Publisher channel that reads from an LDIF file and converts the entries into DSML (Directory Services Markup Language) which is then converted to XDS using a stylesheet on the input transformation. You can remove the stylesheet (its-dsml) if you want to perform your own conversion instead or use the stylesheet from the SOAP-DSML driver instead.

What's new in version 0.91?

  • Ability to suppress command line parameters in the driver shim trace by specifying
    the name of the parameter in a new subscriber driver configuration option called "sub-hidden-words".
    To learn more see the documentation.
    For upgrading, see the example definition here:
    driver configuration XML 
  • Added Designer packages.
  • Updated documentation.
  • Removed setting the association on the subscriber channel through the driver.

What's new in version 0.8?

Support for suppressing command line arguments in the driver shim trace.

What's new in version 0.7?

Updated Apache Commons Exec to v1.3
Updated Apache Commons IO to v2.4

Repackaged the JAR so it's uncompressed.

What's new in version 0.6?

CommandToExecute attribute is now supported in a <modify> event in addition
to the <add> event that was supported in the past.

What's new in version 0.5?
Added several new pseudo attributes that can be used on the subscriber channel, read the documentation.
Added a new publisher channel that can import LDIF files and convert them to XDS for consumption by IDM.
Changed some internal code in regard to synchronization.

How much does it cost?
Nothing, it's completely free to use but it's not open source. Donations using PayPal are of course welcome if you find it useful.

Subscriber:
The driver only handles add and modify events.

Publisher:
If you use the LDIF publisher channel and stop the driver in the middle of processing it won't remember where it stopped. Instead it will rename the LDIF file it was processing to .bak as if it had processed the entire file.

How it works.

The driver shim works by processing XDS documents received from the IDM engine. These documents must contain attributes that the driver understands.

In the current version it only handles <add> documents.

There is an attribute called CommandToExecute that can be used to execute any command line or script that you want.

There are several others attributes that must be used together to have any effect.

For usage information read the PDF that comes with the driver.

Bugs/suggestions
For usage information read the PDF that comes with the driver.

I TAKE NO RESPONSIBILITY IF YOU MESS SOMETHING UP BY USING THIS DRIVER. Please read LICENSE.txt before using this.

Labels:

Collateral
How To-Best Practice
Comment List
Anonymous
Parents
  • Very cool. It's like a stripped down scripting driver. Any chance of a Linux version for launching bash shell scripts?

    Matt
  • Hello
    Since it is written in Java it "should" work on Linux, I just tested it actually by creating a simple bash script, /root/test.sh containing this:

    #!/bin/bash
    ls /var/opt/novell/

    I then "installed" the driver by putting the jar files from the distribution in the /opt/novell/eDirectory/lib/dirxml/classes/ directory and I created a new driver in Designer pointing to the java class biz.sneakycat.adhelper.AdHelperDriverShim

    Then in my driver policy I set the attribute CommandToExecute to:
    /root/test.sh

    After syncing a user through the driver this is what I got back:





    dirxml
    eDirectory
    naudit
    nici
    novlwww
    sentinelpa
    tomcat5




    Of course more testing is needed but it seems to work.
Comment
  • Hello
    Since it is written in Java it "should" work on Linux, I just tested it actually by creating a simple bash script, /root/test.sh containing this:

    #!/bin/bash
    ls /var/opt/novell/

    I then "installed" the driver by putting the jar files from the distribution in the /opt/novell/eDirectory/lib/dirxml/classes/ directory and I created a new driver in Designer pointing to the java class biz.sneakycat.adhelper.AdHelperDriverShim

    Then in my driver policy I set the attribute CommandToExecute to:
    /root/test.sh

    After syncing a user through the driver this is what I got back:





    dirxml
    eDirectory
    naudit
    nici
    novlwww
    sentinelpa
    tomcat5




    Of course more testing is needed but it seems to work.
Children
No Data
Related Discussions
Recommended