CiviCRM Community Forums (archive)

*

News:

Have a question about CiviCRM?
Get it answered quickly at the new
CiviCRM Stack Exchange Q+A site

This forum was archived on 25 November 2017. Learn more.
How to get involved.
What to do if you think you've found a bug.



  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Discussion (deprecated) »
  • Feature Requests and Suggestions (Moderator: Dave Greenberg) »
  • Syncing CiviCRM members with Joomla ACL members
Pages: [1]

Author Topic: Syncing CiviCRM members with Joomla ACL members  (Read 5009 times)

tsidell

  • I’m new here
  • *
  • Posts: 1
  • Karma: 0
  • CiviCRM version: 3.2.3
  • CMS version: Joomla 1.5.20
  • MySQL version: 5
  • PHP version: 5
Syncing CiviCRM members with Joomla ACL members
October 19, 2011, 09:19:15 am
I'm not sure if this has been touched upon before but I'm looking for a solution where the administrator adds users to the CiviCRM platform at it creates a login account for Joomla.  Right now there is redundancy as the administrators have to insert the user in two locations.

Any suggestions?

Dave Greenberg

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 5760
  • Karma: 226
    • My CiviCRM Blog
Re: Syncing CiviCRM members with Joomla ACL members
October 28, 2011, 06:50:25 am
This functionality is being added in the 4.1 release. There is a patch for 3.4 which you can try if you're in a hurry:

http://issues.civicrm.org/jira/browse/CRM-8723
Protect your investment in CiviCRM by  becoming a Member!

Mattlab

  • I’m new here
  • *
  • Posts: 26
  • Karma: 1
  • CiviCRM version: 1
  • CMS version: joomla
  • MySQL version: 4
  • PHP version: 4
Re: Syncing CiviCRM members with Joomla ACL members
December 13, 2011, 08:59:06 pm
I have a question about this. If I have my users in Joomla (about 250) and then 5000 in my current crm what will happen when I import those 5000 to civi? How will it sync with the already made 250 joomla users (using what field to match the two or is it manual) and then how will new feature joomla users match to their entry in the crm if one exists?

Dave Greenberg

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 5760
  • Karma: 226
    • My CiviCRM Blog
Re: Syncing CiviCRM members with Joomla ACL members
December 14, 2011, 10:06:10 am
CiviCRM synchs (links) it's contact records to Joomla user accounts initially using email address. If you run Synch Users to Contacts from Administer > Manager menu - it will look for matches between your 250 Joomla users and the 5,000 contacts you've imported to civi. Once the match is made, it's stored in civicrm_uf_match table. It looks like you're discussing additional functionality regarding propagating email changes here:

http://forum.civicrm.org/index.php?topic=22637.new#new
Protect your investment in CiviCRM by  becoming a Member!

Mattlab

  • I’m new here
  • *
  • Posts: 26
  • Karma: 1
  • CiviCRM version: 1
  • CMS version: joomla
  • MySQL version: 4
  • PHP version: 4
Re: Syncing CiviCRM members with Joomla ACL members
December 14, 2011, 11:47:11 am
Well that is one thing but I am also just trying to figure out the best way to sync my two users securely. I don't want someone with the same email as someone else to get access to someone's account. So I just need to know how this system works. Can I do a manual sync and select what civi user is what joomla user?

Dave Greenberg

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 5760
  • Karma: 226
    • My CiviCRM Blog
Re: Syncing CiviCRM members with Joomla ACL members
December 14, 2011, 01:36:03 pm
I think you'd have to do "manual synch" via DB inserts (civicrm_uf_match table links a civi contact to a joomla user).
Protect your investment in CiviCRM by  becoming a Member!

Mattlab

  • I’m new here
  • *
  • Posts: 26
  • Karma: 1
  • CiviCRM version: 1
  • CMS version: joomla
  • MySQL version: 4
  • PHP version: 4
Re: Syncing CiviCRM members with Joomla ACL members
December 14, 2011, 02:29:04 pm
Hmm but don't you think this could be a security problem if I just registered using someone else's email and suddenly get all their info? Should there not be a way by some other field like UserID in Joomla to say this user is this person in Civi. Because if I just do a sync and it matches up then you could get all kinds of issues with wrong matches to wrong accounts. How could you fix an incorrect match?

Mattlab

  • I’m new here
  • *
  • Posts: 26
  • Karma: 1
  • CiviCRM version: 1
  • CMS version: joomla
  • MySQL version: 4
  • PHP version: 4
Re: Syncing CiviCRM members with Joomla ACL members
December 14, 2011, 02:30:30 pm
Also i realize the manual way of doing it. Maybe this could be brought in as a feature and put in the backend so that my non-technical admin could then go in and manually sync?

Donald Lobo

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 15963
  • Karma: 470
    • CiviCRM site
  • CiviCRM version: 4.2+
  • CMS version: Drupal 7, Joomla 2.5+
  • MySQL version: 5.5.x
  • PHP version: 5.4.x
Re: Syncing CiviCRM members with Joomla ACL members
December 14, 2011, 02:39:26 pm

can u explain what the security risk is? I dont understand the sentence:

and suddenly get all their info?

How do they suddenly get all the info? can u elaborate

lobo
A new CiviCRM Q&A resource needs YOUR help to get started. Visit our StackExchange proposed site, sign up and vote on 5 questions

Mattlab

  • I’m new here
  • *
  • Posts: 26
  • Karma: 1
  • CiviCRM version: 1
  • CMS version: joomla
  • MySQL version: 4
  • PHP version: 4
Re: Syncing CiviCRM members with Joomla ACL members
December 15, 2011, 10:55:50 am
Sure the security risk would be that if I go on a Joomla site that uses CiviCRM and register with my friends email address instead of mine and the administrator enabled frontend viewing of my civiprofile (linked to emails) then I would suddenly get access to my friend's profile instead of mine. The reason for this is that if the admin goes and clicks sync then Civi will look at my email (which is my friends) and sync my friends profile to my Joomla userprofile thereby giving me access to his info - hence the security risk.

I also know some families share emails and so a daughter might get her father's info and vice versa shown to her depending on their registration.

There HAS to be a way for an admin to manually approve links on a user by user basis in the backend and not require them to go into the database with phpmyadmin to do this. This to me seems like a huge issue.

An easy way to implement this would be to have CiviCRM have a field where you can input the Joomla UserID number into the CiviCRM Contant's profile and thus link the two accounts that way - rather than by email automatically. It should be pretty simple to implement and I think is VERY important and probably something not many people realized would/could even happen.

All I need to do is visit any civi site where the frontend allows me to see my profile, register on the site with some users email and boom I have their info.

Thoughts?

Donald Lobo

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 15963
  • Karma: 470
    • CiviCRM site
  • CiviCRM version: 4.2+
  • CMS version: Drupal 7, Joomla 2.5+
  • MySQL version: 5.5.x
  • PHP version: 5.4.x
Re: Syncing CiviCRM members with Joomla ACL members
December 15, 2011, 01:56:41 pm

1. for folks concerned about this issue right now, you can give profile edit/view/listing permissions to users with a certain role only. Auth/Anon user can have profile create only. If you want to display a profile listing, you can limit the set of contacts whose information is displayed via Limit Listings to groups

2. We are discussing this and will come back with some potential solutions and workarounds soon.

3.

Quote from: Mattlab on December 15, 2011, 10:55:50 am
There HAS to be a way for an admin to manually approve links on a user by user basis in the backend and not require them to go into the database with phpmyadmin to do this. This to me seems like a huge issue.

Would be great if you can provide a patch to do the above. This has been requested a few times and would make a good contribution. Seems like a good project to get started on. Might want to consider using ajax to drive the user name / contact name select boxes so that they scale

lobo


lobo
A new CiviCRM Q&A resource needs YOUR help to get started. Visit our StackExchange proposed site, sign up and vote on 5 questions

lcdweb

  • Forum Godess / God
  • I live on this forum
  • *****
  • Posts: 1620
  • Karma: 116
    • www.lcdservices.biz
  • CiviCRM version: many versions...
  • CMS version: Joomla/Drupal
  • MySQL version: 5.1+
  • PHP version: 5.2+
Re: Syncing CiviCRM members with Joomla ACL members
December 15, 2011, 02:19:33 pm
This really is what the user account activation tool in Joomla is for. J15 has only self activation; J16+ has self or admin activation.

1) User completes the new user registration form
2) If self-activation is enabled, they receive an email and must click to activate. Thus only people with access to the email address may activate and gain access. If admin-activation is enabled, the admin receives notification and must review/approve before the user may access the site. If you're using J15 and need the admin-activation, there are some other 3rd party extensions that can provide that feature.

As for "father/daughter sharing an email address" -- that's not a problem I think we need to build a solution for. The problem is not the technology. It's the father's poor management of his email address. Even an admin-approved activation is not going to solve this. Bottom line is that unless you plan to pick up the phone and talk to people, you won't ever know who is on the other side of the email address.

If security is that much a concern, I would just disable user registration altogether and have admins generate user accounts via the new tool in 4.1 (browse to contact record and create user account).

As for the initial syncing -- yes, it is somewhat prone to error if you have duplicate email addresses in your db. I don't see an easy way around it -- you either accept the risk of a false connection, or you handle it with a direct import to the uf_match table where you retain full control. It would be nice to have an interface to review and manage the links between J and C. But I'm not sure it's worth the effort (you might be able to inject the link into the J user manager with a plugin -- could be interesting to explore that possibility). Once you get past the initial syncing, you probably won't run into too many issues since peoples user accounts and contact records are generally created in the same step.
support CiviCRM through 'make it happen' initiatives!
http://civicrm.org/mih

Mattlab

  • I’m new here
  • *
  • Posts: 26
  • Karma: 1
  • CiviCRM version: 1
  • CMS version: joomla
  • MySQL version: 4
  • PHP version: 4
Re: Syncing CiviCRM members with Joomla ACL members
December 15, 2011, 04:32:11 pm
Well the problem is that I have 5000 Contact records and a new Joomla site with only 250 users. As you can see matching emails is an issue. What I think I will have to do is change the code in the user sync to look at User ID in a custom filed that I create in the contact record and match that to a Joomla user id. That should be a pretty easy switch in the code and it will allow the auto sycn to basically be manual as if there is no User ID put into the contact record then it can't sync with joomla. Thoughts?

This is a security issue and you can't think it is reasonable to disable auto registration in Joomla. That would be crazy as not every user that signs up for  a site would need a contact record. The fix is an easy one so i think that in future versions you should simply add a button that says Sync via User Id from Custom Filed in CiviCRM contact. That would easily fix the problem and give people an option of how to sync on a regular basis.

Thoughts?

Pages: [1]
  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Discussion (deprecated) »
  • Feature Requests and Suggestions (Moderator: Dave Greenberg) »
  • Syncing CiviCRM members with Joomla ACL members

This forum was archived on 2017-11-26.