|
Home > Archive > Apache Directory Project > December 2006 > Implementing an alternative backend
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Implementing an alternative backend
|
|
| Tino Schwarze 2006-12-21, 7:12 am |
| Hi there,
I've got a pretty interesting project here: We would like to equip our
open-EIS knowledge management software with an embedded LDAP server.
I was pretty glad to find the Apache DS since everything seems to be in
place. My first goal is to allow user authentication against an existing
open-EIS user base which is stored in a DB.
Looking at the architecture I found that the best way would be to
implemnt a new backend and provide a DN<->category mapping (open-EIS
content is organized in categories) as well as a OID<->SQL mapping.
Do you have any hints or advice for me? Is this the right place to
start?
Bye,
Tino.
--
www.quantenfeuerwerk.de
www.spiritualdesign-chemnitz.de
www.lebensraum11.de
| |
| Alex Karasulu 2006-12-21, 1:11 pm |
| Tino Schwarze wrote:
> Hi there,
>
> I've got a pretty interesting project here: We would like to equip our
> open-EIS knowledge management software with an embedded LDAP server.
> I was pretty glad to find the Apache DS since everything seems to be in
> place. My first goal is to allow user authentication against an existing
> open-EIS user base which is stored in a DB.
>
> Looking at the architecture I found that the best way would be to
> implemnt a new backend and provide a DN<->category mapping (open-EIS
> content is organized in categories) as well as a OID<->SQL mapping.
>
> Do you have any hints or advice for me? Is this the right place to
> start?
Sounds like a nice project to work on. Yeah writing a custom partition
would give you a lot of power. It is the right place to start.
First thing just take a look at the Partition interface in the partition
package. You'll have to implement this for your EIS application.
Best thing to do might be to first stub out all the methods and set
things up so you can just read a simple entry after installing the
partition into the server. Then you can move on to start building up
your solution.
Regards,
Alex
| |
| Tino Schwarze 2006-12-21, 1:11 pm |
| Hi Alex,
On Thu, Dec 21, 2006 at 12:25:52PM -0500, Alex Karasulu wrote:
>
> Sounds like a nice project to work on. Yeah writing a custom partition
> would give you a lot of power. It is the right place to start.
>
> First thing just take a look at the Partition interface in the partition
> package. You'll have to implement this for your EIS application.
>
> Best thing to do might be to first stub out all the methods and set
> things up so you can just read a simple entry after installing the
> partition into the server. Then you can move on to start building up
> your solution.
That's good news. :-) I'll let you know how I progress...
BTW: I had some difficulties with building Apache DS... what's the
easiest way to get a dev environment set up with Eclipse? I had to add a
lot of libs by hand... And there's a JBOSS depency in the sar-plugin
which made me struggle.
Bye,
Tino.
--
www.quantenfeuerwerk.de
www.spiritualdesign-chemnitz.de
www.lebensraum11.de
| |
|
|
| Tino Schwarze 2006-12-27, 1:11 pm |
| On Thu, Dec 21, 2006 at 12:25:52PM -0500, Alex Karasulu wrote:
[...]
[vbcol=seagreen]
> First thing just take a look at the Partition interface in the partition
> package. You'll have to implement this for your EIS application.
>
> Best thing to do might be to first stub out all the methods and set
> things up so you can just read a simple entry after installing the
> partition into the server. Then you can move on to start building up
> your solution.
I've come so far to have an ApacheDS running with to partitions:
ou=system and o=community4you.de, the latter being backed (kind of ;))
by open-EIS. To ease testing, I'd like to access my own partition via
JNDI. After everything is set up, I start the server using this code
snippet:
Hashtable<String, Object> _environment = new Hashtable<String, Object>();
_environment.put ("java.naming.security.authentication", "simple");
_environment.put ("java.naming.security.principal", "uid=admin,ou=system");
_environment.put ("java.naming.security.credentials", "secret");
_environment.put ("java.naming.provider.url", "ou=system");
_environment.put ("java.naming.factory.initial", "org.apache.directory.server.jndi.ServerContextFactory");
_environment.put ("org.apache.directory.server.core.configuration.Configuration", _serverconfig);
// this actually starts up the server
InitialDirContext _idc = new InitialDirContext (_environment);
Attributes _testattrs = _idc.getAttributes("uid=admin");
System.out.println ("initialized: uid="+_testattrs.get("uid"));
But how do I get access to my o=community4you.de partition? I suppose,
creating another InitialDirCotext is not the way to go (I'd have to
provide all the internal stuff, object classes, attriute types etc
myself, I suppose), but everything I can do with that context I created,
is relative to it, so I can't actually access my own partition.
Any advice on this?
Thanks,
Tino.
--
www.quantenfeuerwerk.de
www.spiritualdesign-chemnitz.de
www.lebensraum11.de
|
|
|
|
|