Can Drupal send password reset tokens to email addresses other than the Primary in the linked CiviCRM contact?

If this question veers too far away from CiviCRM, I apologize. This ability might permit resetting passwords for all users in our Active Directory Federated Services/Office 365 environment - a huge benefit!

We are migrating away from a CRM we can't afford. We had a custom web application resetting AD passwords by searching the old CRM's email database and generating a link for the associated user, who could have any number of emails associated. The big problem is that the Primary email is likely issued by us via Office 365 and thus uses the same AD FS credentials that we would like to sync Drupal to. (We have achieved SSO everywhere else and don't want Drupal/CiviCRM to be separate.) Therefore, someone needing a password reset probably can't access his/her Primary email, either.

As the trend is lately, we allow students access to .edu emails after graduation, so we have quite a few random people out there forgetting passwords. A very desirable side effect of using CiviCRM for password resets is that alumni will probably care a lot more about keeping their own contact information up-to-date with us (since access to their .edu email depends on it).

If I can send password reset tokens to any one of a contact's emails, a lot of problems are suddenly solved.

  • Am not familiar with ADFS, but do you need a drupal reset link or an ADFS reset link?
    – Catorghans
    Jan 28, 2016 at 20:50
  • ADFS doesn't have rest links per se. It's just a link between Azure's servers and a local domain controller.
    – bendodge
    Jan 28, 2016 at 23:17
  • According to discussions I've read online, Drupal LDAP can write back changes to AD if desired (the default is read-only). That would allow Drupal to change AD passwords. The previous comment was submitted accidentally - didn't use Shift+Enter.
    – bendodge
    Jan 28, 2016 at 23:24

1 Answer 1


This is not default. It's a custom drupal module or a custom CiviCRM extension, depending on the exact use case. Should not be that difficult.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.