All our users are imported from LDAP with the ldap_feeds importer. I only recently set the unique_persistent_attr and for new users the puid is being set properly. What I want is for existing users to have the puid set on login and/or account update but it is not (I've checked both drupalAcctProvisionTriggers). When using the ldap_users test page and selecting to execute the action, I get a duplicate email address error which I assume means LDAP is trying to create a new user instead of synching with an existing user.

I've tried mapping the objectguid and objectsid in the ldap_feeds importer but that doesn't have a way to convert the binary value (#2053215-5: LDAP Feeds: ldap_feeds does not populate sid, puid or puid_attr).

Comments

bulldozer2003 created an issue. See original summary.

grahl’s picture

Title: Associating existing Drupal accounts with LDAP » Allow setting of missing PUID during updates
Category: Support request » Feature request
Status: Active » Postponed

Hi

So this is a known issue in terms of that the PUID is only set on initial creation / association. Since it is a persistent attribute, I don't think it should be able to overwrite this property normally and at most associate a value if present if null. (I'm open to changing my mind on this if someone has a real-world use case.) I have not gotten feedback in the issue queue that this is a particular important issue and it would have to be changed in 8.x, too.

I'm taking the liberty of moving this support request to a postponed feature request and would appreciate if other people would chime in, if they need / want to set puid retroactively. I will expedite it then.

As to your particular approach bulldozer2003, assigning the properties with Feeds seems reasonable. Let's talk more about this in the other issue.

grahl’s picture

Status: Postponed » Closed (outdated)

Closing issue as outdated due to no further development on 7.x, if you feel this issue is still relevant and you are willing to work on a patch and/or debug the problem, please reopen.