2010-11-13 13 views
0

Je développe un site Web avec CodeIgniter qui va probablement se rapporter et se connecter avec de multiples services et cadres:Meilleure pratique - Comment implémenter une couche d'authentification d'utilisateur avec plusieurs services?

  • Magento pour le commerce électronique
  • Wordpress pour les blogs
  • Peut-être Buddypress pour plus de fonctionnalités sociales
  • Mailchimp pour la livraison newsletter
  • Je ne devrais pas oublier Facebook Connect, je suppose ...

Peut-être que c'est une approche désordonnée mais j'essaie d'éviter d'inventer la roue. Et préférez utiliser le meilleur logiciel pour la tâche. La chose est que j'ai besoin d'une couche d'authentification pour partager un objet utilisateur entre tous les services. Mon but est d'avoir un seul formulaire de registre qui vous permettra d'accéder à tous les services (shopping, blogging, abonnement à la newsletter). Je pense que je devrais avoir ma propre base de données utilisateur et un système d'authentification globale (y a-t-il quelque chose d'open-source?). Ensuite, les utilisateurs des services sont créés dans les coulisses. Des idées sur la façon d'aborder cette tâche?

Répondre

0

Vous pouvez probablement trouver beaucoup de bibliothèques ou de modules de connexion unique pour vous aider avec la partie SSO, mais vous devrez probablement les faire manuellement parler aux mêmes tables et champs pour le faire fonctionner. Je vous suggère de commencer par configurer votre SSO simple avec facebook, google et les autres pour vos informations d'utilisateur à des services externes comme MailChimp, puis google pour les addons tiers avec 'single sign on' comme mots-clés pour n'importe quelle application vous devez avoir travaillé ensemble .. Cela pourrait vous permettre d'étendre votre installation magento, wordpress ou whataver pour communiquer les uns avec les autres.

+0

Merci pour la réponse. J'espérais vraiment plus de réponses parce que ma question n'a pas de réponse correcte. – Landitus

+0

Je ne suis pas sûr de savoir quelles autres réponses vous pouvez obtenir - les applications mentionnées ci-dessus ne vous permettent pas par défaut de créer une connexion globale pour votre réseau - et ce sera une tâche écrasante de l'implémenter. Il n'est pas possible d'écrire des exemples de code simples qui fonctionnent à la volée. Utiliser la technologie SSO existante comme OpenId ou Facebook connect serait la meilleure approche. – Repox

1

Vous devez avoir la base de données de connexion séparée afin de gérer toutes vos applications, vous devez d'abord développer une bibliothèque commune pour partager la couche d'authentification utilisateur, Vous pouvez gérer l'application n avec une seule base de données utilisateur

Naser