https://fedorahosted.org/389/ticket/426
389 1.2.11.11 adds support for syncing posix attributes in a new posix winsync plugin. In order for this plugin to work in conjunction with the ipa winsync plugin, the ipa winsync plugin will have to first check to see if the incoming user entry already has the posix attributes, and not add them if so. The 389 winsync v3 api adds a precedence callback - this works exactly the same way as the regular slapi plugin precedence (i.e. a lower precedence means it is called earlier). The ipa winsync plugin should use this callback to guarantee a higher precedence than the 389 posix winsync plugin precedence.
I'm not 100% sure I understand what I need to do here.
I need to configure the ipa_syncsync plugin with a higher precedence. Is that done with nsslapd-pluginPrecedence in cn=config or somewhere else?
If I the DS winsync plugin runs first and I find that the posix attributes aren't set, do I need to do anything? I would assume that if the DS winsync plugin failed to add posix, what chance do I have?
AFAIU the ipa plugin is run after the DS plugin so IPA plugin should just accept the values that are passed from the DS to it instead of generating new ones. Something like this. Please check with Rich.
Replying to [comment:2 rcritten]:
I'm not 100% sure I understand what I need to do here. I need to configure the ipa_syncsync plugin with a higher precedence. Is that done with nsslapd-pluginPrecedence in cn=config or somewhere else?
Yes, but unfortunately it's not that simple, because winsync plugins can't directly use the regular slapi plugin precedence mechanism.
The ipa winsync plugin should not have to change very much. It just needs to add any missing posix attributes. So probably the only change will be to check to see if the posix attributes are already present in the entry and skip them if so.
I just wonder what cases would the winsync plugin not add posix attributes that the IPA plugin would need to. Is it safe to assume that I just need to make sure we're called last?
I guess how hard to we want to support POSIX attrs from Windows in IPA? We have a ticket for that, #2133, deferred.
Replying to [comment:6 rcritten]:
I just wonder what cases would the winsync plugin not add posix attributes that the IPA plugin would need to.
For example, if there are no POSIX attributes in Windows, then IPA would need to add them just as it does now. The POSIX schema support in AD is optional and some sites may not use it at all.
Is it safe to assume that I just need to make sure we're called last?
ipa winsync needs to be called after the 389 posix winsync plugin. And it needs to add any missing POSIX attributes.
http://port389.org/wiki/Windows_Sync_Plugin_API#Version_3_API_functions
Plugin config docs: http://port389.org/wiki/WinSync_Posix
attachment freeipa-rcrit-1053-winsync.patch
master: 71f9008[[BR]] ipa-3-0: c342abd
Moving closed RC1 tickets to Beta 3.
Rename component.
Metadata Update from @rmeggins: - Issue assigned to rcritten - Issue set to the milestone: FreeIPA 3.0 Beta 3
Login to comment on this ticket.