microsoftgraph / group-membership-management

Group Membership Management (GMM) is a service that dynamically manages the membership of AAD Groups. Groups managed by GMM can have their membership defined using existing AAD Groups and/or custom membership sources.
Other
49 stars 10 forks source link

Direct-Member Removal in TargetGroup #28

Closed dborchers-gc closed 1 year ago

dborchers-gc commented 1 year ago

Hey @alrios-ms i´ve just see that the GMM-Sync isnt working with direct members inside the targetgroup

When i sync Group A and B to the Group C eveything works perfect. But when i add a direct member to teh Group C he will be removed in the next sync.

Would it be possible to change that in any further update? or make it controllable in the job config?

danielluo-msft commented 1 year ago

Hi @dborchers-gc

The way that GMM works, the destination will always be synced with the users found in all of the source parts so it will overwrite any manual adds / removes that you make in the destination. One way to still support the ability to add manual members would be to create another group D for example that has all of the members that you want to manually add to the group and then update the sync to have Source: A, B, D and Destination: still C. Then you would only add manual members to group D and GMM will continue syncing those members into destination C.

Regards, Dan

dborchers-gc commented 1 year ago

Hi, okay i understand how the GMM works and the workaround with group D would maybe be okay for the most cases.

But how to you get the Changes from the sourcegroups? about the main AAD Logs right? So the GMM will have a look in the logs, saw that there is a change in the source group and apply the changes to the destinationgroup.

I guess there could be two ways to make it possible to have direct members in the destination group - its only a suggestion ;-)

Its only an idea, i know it wouldnt be easy to change the GMM-processes but maybe it could be a good feature

danielluo-msft commented 1 year ago

Hi @dborchers-gc

Yes, this kind of feature is doable, we actually have something similar in the works right now. Regarding the two suggestions

Thank you for the feedback, we are definitely looking into adding more functionality for more real-time syncs.