I have a scenario where the SharePoint People Picker is replaced with a custom picker that only ever returns group or person claims backed by our custom Claims Provider. That picker is also used on the Group Edit page.
The picker works as expected and resolves claims correctly. However, when I try to save the group, SharePoint tells me that AD Domain Groups cannot be owners of SharePoint groups.
I did my share of digging, and it seems that the page uses the
PickerEntity from the People Picker to create an
SPMember (in this case, an
SPUser) that is then assigned to the Owner property of the
SPGroup in question. The property setter for Owner checks whether
SPMember.IsDomainGroup is set for the
SPUser, and if it is, throws an exception.
Apparently, in this case,
SPUser.IsDomainGroup returns true, but I have no idea why -- the code path that creates the
SPUser is very convoluted and hard to follow.
Is it even possible to have custom claims as group owners? If so, what am I doing wrong here?