FIMService: Convert Static Group to Dynamic

Following from my previous post on how to create a group with both static members and dynamic filter, I came across a scenario where post migration we have some customers who initially had a group with explicit members but we thought they could be converted to a filter based group which matches the business case.

The script below helps you on doing the same. Again using LithnetRMA for the process.

Warning: Again, many custom attributes logic in FIMService for my environment but again you will get the whole idea. I have left the script as-is and not dumbed it down.

Please read my Groups with Static and Dynamic Members in FIMService post to understand the logic I have been applying for Autogen groups and how group and set tie up to each other in FIMService.

LOGIC

  • Asks for existing group name (DisplayName) in FIMService.
  • If found, outputs the number of explicit members found
  • Asks if you want to put a filter on the group and then asks for the XPATH filter (coming soon on how to create XPATH easily)
  • Checks if the filter is valid. If so (the fun part)
    • Outputs the count of users in the new filter
    • Compares the filter users to explicit members and gives a count of
      • New members to be added due to filter (i.e. not found in the explicit members list)
      • Count of common members found between existing explicit members and XPATH
      • Finally gives count of explicit members for the new set to be created (i.e. not found in the new filter).
  • Finally if the user wants to continue after above information
    • Creates a set with “Autogen-GroupName” and set the filter and explicit members to that
    • Modify’s existing group and deletes the current explicit members
    • Converts the existing group to a filter based and sets the objectID of the set created above.
  • Done

Hope it helps.. Please like, share or leave a comment below..

It's only fair to share...Share on Facebook
Facebook
2Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Email this to someone
email
Share on Reddit
Reddit
0Print this page
Print

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.