[midPoint] Connector Frameworks (was: Re: Re. Upgrading the AD connector server & connector)
Radovan Semancik
radovan.semancik at evolveum.com
Thu Oct 31 16:37:30 CET 2013
Hi Deepak,
On 10/30/2013 11:20 AM, Deepak Natarajan wrote:
> I'm experimenting with updating the .NET connector server and the
> connector itself (for midpoint 2.2). I don't know if I should be doing
> this, but what the heck :)
>
> I obtained the "latest" .NET connector server from Oracle and
> installed it on Windows Server 2008 R2. And also the latest active
> directory connector.
Well, this is tricky. The connector framework (ICF) used by the Oracle
is no longer maintained as open source project (as far as I know).
Therefore we are not sure what changes have been made there. However we
are sure that there are some changes in the ICF framework that we use.
This is currently OpenICF version of the framework. Comaptibility with
original connectors and non-opensource versions was not a goal of our
development. Some of the changes in the framework migh have broken the
compatiblity with Oracle connectors. Therefore I doubt that the
connectors are still fully compatible. For the sake of completess: There
is a ConnId project that is also fork of Sun ICF framework. But it has
an independent development and it is also currently not fully compatible.
This means that there are (at least) four versions of the framework that
are partially or completely incompatible:
1: Original Sun ICF (seems to be no longer maintained)
2: Oracle closed-source version (most likely)
3: OpenICF (used by Forgerock and Evolveum)
4: ConnId (used by Syncope)
This situation far from being ideal (read: completely insane). Therefore
we have agreed with OpenICF and ConnId projects to end this madness.
There are currently plans and also real activities to merge OpenICF and
ConnId frameworks into common code to make connectors compatible again.
This ideal was well received and currently it goes quite well for
midPoint, OpenICF and ConnId projects. However I would like to express
my personal doubts that Oracle will join this effort in any foreseeable
future :-)
If you really want then you may try to use non-OpenICF versions of the
connectors. However I would personally not expect any great results. I
have no means to know what was really done in closed source projects.
But I know that we have fixed many problems in AD connector alone (using
OpenICF code base). And I somehow doubt that these problems were fixed
in other versions as well. But you are free to experiment of course.
However, the situation with the ICF framework is quite serious. There
are severe design flaws in the original Sun ICF design (see
https://wiki.evolveum.com/display/midPoint/ICF+Issues). The current ICF
may work OK for simple IDM systems. But it actually took a lot of
ingenuity to make it work smoothly with advanced IDM system such as
midPoint. We are pushing the capabilities of current ICF to the very
limits. It is inevitable that the framework must evolve. And this is
exactly what we are currently discussing on ConnId mailing list: (ConnId
mailing list and git repository was somehow semi-officially chosen as a
common gound for the open source ICF evolution)
https://groups.google.com/d/forum/connid-dev
The discussion is still in the early phases. But even now it is quite
clear that non-comaptible changes will be required in the framework to
fix the design flaws of original Sun ICF. Therefore it can be expected
that even if there is currently some compatibility between the open
source and the closed source version of ICF such comaptibility will soon
be lost.
--
Radovan Semancik
Software Architect
evolveum.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.evolveum.com/pipermail/midpoint/attachments/20131031/60cbb4c8/attachment.htm>
More information about the midPoint
mailing list