问题
I use Drupal with CiviCRM for our nonprofit's public site and CRM database, and Open Atrium for the intranet. My goal is to either sync or share specific users from the public site to the intranet, to allow single sign-on.
However, only users who are part of a specific CiviCRM smart group (volunteers) should be shared/synced. I could use the module to sync CiviCRM groups with Drupal organic groups if that would make this task easier.
Any thoughts?
回答1:
Usually, the Domain Access module is used for synching users and whatnot, but your requirement that only certain users be synched throws a wrench into that setup.
Therefore, I'd recommend that you either:
- Sort through that module's documentation to see if it provides any hooks so that you can filter down the user list, and if not...
- Just look at how that module does its heavy lifting and write a custom module to do the same but only with a limited set of users.
回答2:
Actually, you can use Account Sync for this. (where only a sub-set of users is required.)
Just create a sync role and assign account sync permissions to that role only.
Use a server key to encrypt this as you would for XML-RPC.
http://drupal.org/project/account_sync
回答3:
If Single Sign-On is your goal, Bakery provides single sign-on between multiple Drupal sites (including Drupal.org and other sites in the *.drupal.org network, something of a recommendation).
Worth checking out - while it does involve some additional setup / config, it doesn't mess with Drupal so much as some other options.
It does require that your sites are on the same base domain, and that they are on the same protocol (can't mix https://example.com
with http://foo.example.com
).
See Bakery documentation for further info.
来源:https://stackoverflow.com/questions/2296548/is-it-possible-to-share-users-between-a-drupal-6-x-and-open-atrium-database-bas