none
Provision objects with MVExtension to two connected MA's at the same time RRS feed

  • Question

  • Hello. I'm working on syncing the same contact objects to two separate AD LDS instances. The instances are not replicating, so FIM will do the provisioning/deprovisioning in both instances at the same time. I have created two separate AD LDS Management Agents with the same settings, "AD-LDS 1" and "AD-LDS 2".

    Note that I don't have the FIM portal installed. So I have written a MVExtension doing the provisioning to "AD-LDS 1", which works fine. Now I want to add provisioning for the same contacts to "AD-LDS 2" in the same process - how should I do that in the MVExtension?

    void IMVSynchronization.Provision (MVEntry mventry)
            {
                if (mventry.ObjectType.Equals("contact"))
                {
                    ConnectedMA ManagementAgent = mventry.ConnectedMAs["AD-LDS 1"];

    ...

    Is it possible to add "AD-LDS 2" within "mventry.ConnectedMAs" like so: mventry.ConnectedMAs["AD-LDS 1;AD-LDS 2"]; ? Or should I just copy the provisioning code for "AD-LDS 1" and paste it below for "AD-LDS 2"? I couldn't find any details on what "ConnectedMAs" supports.

    Any tips are appreciated, thanks!


    • Edited by MrBeanbag Tuesday, February 16, 2016 10:57 PM typo
    Tuesday, February 16, 2016 10:55 PM

Answers

  • Mr Beanbag, copying and pasting the code will work but there are more elegant ways for handling this scenario. You may want to avoid having to recode/recompile your rules extension for every rule change. I will usually put rules into a config file which gets read in the Initialize() method. That way if you want to provision objects to an additional data source, it's a simple case of updating the config file. Hope this makes sense.

    Tom Houston, UK Identity Management Practice

    • Edited by Thomas Houston Wednesday, February 17, 2016 9:06 PM
    • Marked as answer by MrBeanbag Friday, February 26, 2016 1:22 PM
    Wednesday, February 17, 2016 8:58 PM

All replies

  • Mr Beanbag, copying and pasting the code will work but there are more elegant ways for handling this scenario. You may want to avoid having to recode/recompile your rules extension for every rule change. I will usually put rules into a config file which gets read in the Initialize() method. That way if you want to provision objects to an additional data source, it's a simple case of updating the config file. Hope this makes sense.

    Tom Houston, UK Identity Management Practice

    • Edited by Thomas Houston Wednesday, February 17, 2016 9:06 PM
    • Marked as answer by MrBeanbag Friday, February 26, 2016 1:22 PM
    Wednesday, February 17, 2016 8:58 PM
  • You could also have a look at my codeless provisioning framework that lets you configure using XML - https://fimmre.codeplex.com/


    Regards, Soren Granfeldt
    blog is at http://blog.goverco.com | facebook https://www.facebook.com/TheIdentityManagementExplorer | twitter at https://twitter.com/#!/MrGranfeldt

    Thursday, February 18, 2016 7:55 PM