Qui me parle ?

jesuisundev
Je suis un dev. En ce moment, je suis développeur backend senior / DevOps à Montréal pour un géant du jeux vidéo. Le dev est l'une de mes passions et j'écris comme je parle. Je continue à te parler quotidiennement sur mon Twitter. Tu peux m'insulter à cet e-mail ou le faire directement dans les commentaires juste en dessous. Y'a même une newsletter !

Pour me soutenir, la boutique officielle est disponible ! Sinon désactiver le bloqueur de pub et/ou utiliser les liens affiliés dans les articles, ça m'aide aussi.

14 commentaires sur “Sign-in & Login Facebook / Google / Twitter / Email via Symfony2”

  1. Bonjour,

    D’abord, merci pour ce tuto.

    J’ai essayé de l’implémenter, mais je suis bloqué par 2 erreurs.
    1. InvalidArgumentException: The service definition « fos_user.registration.form » does not exist.
    2. InvalidArgumentException: Unable to replace alias « fos_user.registration.form » with « hwi_oauth.registration.form ».

    Ma configuration est la suivante :
    – FOS : 2.0.*@dev
    – HWI : 0.3.8

    J’ai suivi le tuto et adapté selon mon application.

    Il y a cependant un point que je ne suis pas sur d’avoir compris.
    J’ai un bundle User qui surcharge FOS.
    J’ai créé l’équivalent du fichier src/Acme/AcmeBundle/Controller/ConnectController.php dans mon bundle User mais en fait, je crains qu’il ne soit pas reconnu.

    Auriez vous une idée de piste à suivre pour débugger ?
    Merci

    1. Bonjour,

      il semble que FOSUser ne soit pas chargé dans votre configuration.
      Je vois que vous utiliser la version 2.0.*@dev, je vous conseille d’utiliser la dernière version stable, comme dans le tuto, qui est la 1.3 (cela risque d’avoir des effets sur votre projet). Suivez également scrupuleusement la doc pour surcharger le bundle : https://github.com/FriendsOfSymfony/FOSUserBundle/blob/1.3.x/Resources/doc/index.md

      Concernant l’autre erreur pourriez vous double checkez le fichier « App/config/routing.yml » et notamment le « hwi_oauth_connect » ?

  2. Bonjour,

    J’ai récupéré un site avec une classe User (il n’utilise pas le FOSUserBundle) et jai du mal à comprendre la notion de provider dans ce cas là (je précise que je ne suis pas du tout un dev symfony à la base, donc j’avance un peu dans le noir). Dois-je utiliser un des trois providers proposés par le bundle ?

    Merci

    1. Bonjour,

      Cela dépend de comment est implémenté la gestion des utilisateurs dans votre appli.

      Concernant le provider voila de quoi vous éclairer sur cette partie.

      La documentation de HWI en parle et peut vous aider pour ce cas apparemment, vous devriez utiliser le provider EntityUserProvider (service name: hwi_oauth.user.provider.entity) si vos utilisateurs sont bien en base de données. Je n’ai cependant jamais tester ce cas précis.

  3. Hello et merci pour cette publication.
    Je découvre OAuth. J’ai lu/entendu que c’était pas top niveau sécurité (en particulier la version 2.0), notamment du fait qu’il s’agit davantage d’un moyen d’autorisation et non d’authentification.
    Quels sont les risques en terme de sécurité / vie privée induit par cette méthode ?

  4. Bonjour
    Merci pour ce tuto !
    Je viens de l’installer dans mon site
    Je suis en SF 3 donc j’utilise la branche dev-master de hwi/oauth-bundle

    J’essaye uniquement la connexion Facebook pour le moment

    Quand je clic sur le lien /connect/facebook, il m’envoi bien vers FB
    J’autorise mon site à se connecter (l’appli est alors bien ajoutée à mon profil FB)
    Mais ensuite je suis redirigée vers un formulaire vide « s’inscrire avec le compte Olivia… » (voir PJ)

    C’est bien mon nom mais j’aimerais plutôt atterrir sur mon formulaire d’inscription, avec les champs pré-remplis, ou encore mieux, que le user soit directement connecté et arrive sur la home page !

    Mon fichier de config :
    hwi_oauth:
    connect:
    confirmation: true
    registration_form: fos_user.registration.form.factory
    firewall_names: [main]
    fosub:
    username_iterations: 30
    properties:
    facebook: facebook_id

    Pour info, j’ai mis fos_user.registration.form.factory au lieu fos_user.registration.form comme indiqué dans la doc, sinon il ne trouve pas le service

    Peux-tu m’aider ?
    Un grand merci !
    Olivia

    [EDIT]
    En regardant les log, je me suis rendu compte qu’il ne trouvait pas le user en BDD, en cherchant par facebook_id
    J’ai donc mis à la main le facebook _ID en base et là ca fonctionne.. 🙂

    Par contre, comment faire pour que le facebook_id soit bien sauvegardé en base ??
    Une piste ?

    merci

    1. Bonjour,
      J’ai le même problème que vous, j’aimerai que le user soit directement connecté et arrive sur ma homepage.
      Je suis dans les mêmes conditions (symfony 3).
      Avez vous trouvé la solution ?
      Merci

        1. Bonjour vous deux!
          Vous avez trouvé une solution depuis? je planche sur le sujet depuis hier et la plupart des exemples de code que je trouve concernent symfony 2…

T'en penses quoi ?

Your email address will not be published. Required fields are marked *