Connected Data Source Extension or MA?
I have a few questions regarding a SOAP connector I'm in the process of developing.
I have an array of "people" (retrieved from a web service on an ESB) that I would like to sync with FIM. "The hierachy consists of "organization", "organizationalUnit" and "person", and a nother step in the hierachy might also be added shortly.
Each person has attributes such as; "cn", "dn", "displayName", "mail", etc.
I tried creating an "Extensisble Connectivity MA", and saw that it accepts:
AVP (Attribute value pair?) Delimited (CSV file?) DSML Fixed (Fixed width text file?) LDIF
Which of the formats to you reccomend I use for my data? My guess is that DSML is the most suitable.
Are there any advantages to be gained by packaging the Data Source Extension as a MA, or might I just as well leave it as a DSE? My plan was to get a DSE working, and to turn it into a fully fledged MA afterwards. Does this sound like a wise approach?
All help will be greatly appreciated!
Thanks, Francis
November 11th, 2010 8:13am
Francis - while DSML might be the best option, the most practical is LDIF as it is (almost) as easy to work with as AVP (which I would use if it supported true deltas for multivalue attributes). You will probably write an LDIFWriter class faster than
a DSMLWriter is my guess, and there's a published schema somewhere on the web, as well as this useful
msdn guide. Don't even consider using CSV or Fixed.
Wise to leave the packaging until later yes ... but well worth it when you want it for re-use and/or branding. Advantages are limited when the use is a "once off".Bob Bradley, www.unifysolutions.net (FIMBob?)
Free Windows Admin Tool Kit Click here and download it now
November 11th, 2010 9:29am
If you choose DSML there is existing code to output DSML in the
OpenLDAP XMA. CraigMartin Edgile, Inc. http://identitytrench.com
November 11th, 2010 4:51pm
If you choose DSML there is existing code to output DSML in the
OpenLDAP XMA. CraigMartin Edgile, Inc. http://identitytrench.com
Free Windows Admin Tool Kit Click here and download it now
November 11th, 2010 4:51pm
Thanks to you both!
I had already started with DSML by the time I got my first reply, so I decided to continue along that route :).
I have made an example DSML file, that an Extensisble Connectivity MA accepts.
In my program, I have implemented "IMAExtensibleFileImport" (I thought I'd make a datasource that imports first, and implement exporting afterwards), written code in "GenerateImportFile" that recieves the data from the web service
and serializes it into a DSML file; "fileName" using an XmlWriter.
My understanding is that this should be sufficient, to plug the class library's dll into an "Extensisble Connectivity MA", am I mistaken? I copied the dll and dll.config from my project folder to \Microsoft Forefront Identity Manager\2010\Synchronization
Service\Extensions on the FIM sync server.
I have previously set up the OpenLDAP MA (with some great help here on the forum), and that already had a "Full import" run profile, so I didn't think much about it. Upon creating a "Full import" run profile, I'm asked to specify
an import file. What should this file be? I thought the MA got its data from the DSML file the program creates.
My sincerere apologies if my questions are dumb, I'm very new to FIM and identity management.
Thanks,
Francis
November 15th, 2010 4:23pm
Francis - the file name you specify there in the run profile is arbitrary ... whatever name you specify is the name that is passed to you as a parameter in your code implementation of the IMAExtensibleFileImport interface. It is up to you to
make sure your XmlWriter writes to the passed file name ... ok?Bob Bradley, www.unifysolutions.net (FIMBob?)
Free Windows Admin Tool Kit Click here and download it now
November 15th, 2010 5:27pm
Thanks again, I got it working nicely.
Regards, Francis
November 23rd, 2010 5:16am