Step 1: Create and bind an attribute called GroupOwner to user objects in the Portal
Step 2: Run the following Powershell script as an administrator of FIM.
Step 3: Create your set based on the updated GroupOwner attribute which will now be true for all your Group Owners
Step 4: Make workflows! :)
The Code:
$uri=http://NameofYourServer:5725
$attributeName="GroupOwner"
# load FIM snapin, ignore errors if already loaded
Add-PSSnapinFIMAutomation-ErrorActionSilentlyContinue
# gets the value of a single-valued attribute from an exported object
functionGetAttributeValue($exportObject,[string]$name) {
$attribute=$exportObject.ResourceManagementObject.ResourceManagementAttributes |
Where-Object {$_.AttributeName-eq$name}
if ($attribute-ne$null-and$attribute.Value) {
$attribute.Value
}
}
$users=Export-FIMConfig-CustomConfig"/Person[ObjectID = /Group/Owner]"-OnlyBaseResources
foreach ($userin$users) {
$objectID2=$user.ResourceManagementObject.ResourceManagementAttributes | Where-Object {$_.AttributeName-eq"ObjectID"}
$objectID2=$objectID2.Value
$ImportOperation= [Microsoft.ResourceManagement.Automation.ObjectModel.ImportOperation]
$ImportState= [Microsoft.ResourceManagement.Automation.ObjectModel.ImportState]
$importChange=New-ObjectMicrosoft.ResourceManagement.Automation.ObjectModel.ImportChange
$importChange.Operation=$ImportOperation::Replace
$importChange.AttributeName=${attributeName}
$importChange.AttributeValue=$true
$importChange.FullyResolved= 1
$importChange.Locale="Invariant"
$importObject=New-ObjectMicrosoft.ResourceManagement.Automation.ObjectModel.ImportObject
$importObject.ObjectType="Person"
$importObject.TargetObjectIdentifier=$objectID2
$importObject.SourceObjectIdentifier=$objectID2
$importObject.State=$ImportState::Put
$importObject.Changes= (,$importChange)
$importObject |Import-FIMConfig-uri$uri
}