2017-02-15 1 views
-1

Voici que j'ai un petit problème d'architecture, d'abord, j'ai deux applications:Comment connecter l'utilisateur entre un avant et un api en utilisant login/mot de passe ou oauth2

  • Un api écrit symfony 3.3
  • Un front écrit aussi, il symfony 3,3

Ensuite, je voudrais avoir deux à se connecter de manière:

  • f Premièrement en utilisant une troisième application comme Facebook, Google ou Twitter. Pour cette partie j'ai pensé utiliser hwiOauthBundle
  • Ou simplement par login/mot de passe. Ici, j'ai pensé à utiliser FOSUerbundle

Enfin, je voudrais avoir api sécurisé, qu'un utilisateur non connecté ne peut pas atteindre les ressources de l'API.

Que dois-je installer ou développer pour que tous les critères exprimés soient plus élevés?

D'avance, merci de votre réponse.

Répondre

1

Vous devez configurer une sorte de point de connexion proxy avec login et id_client. Puis avec le nom d'utilisateur et le mot de passe donnés par l'utilisateur, vous devez interroger le point de terminaison backend token oauth pour obtenir un jeton d'accès. Ensuite, il suffit de signer votre demande au backend avec ce jeton.

Dans mon cas, j'utilise FosUserBundle pour la gestion des utilisateurs, FosOauthServerBundle pour la gestion OpenAuth. Les deux sont installés dans le backend.

Une fois installé, vous devez enregistrer un client aAuth. Ce tutoriel était vraiment utile pour moi OAuth2 Explained

+0

Merci pour votre réponse. Cependant, comment vous enregistrez-vous pour un nouvel utilisateur? De même, comment "connecter" un utilisateur Facebook à notre API? – Khalezis

+0

Avec un type de subvention personnalisé qui vérifie le jeton généré par le processus de connexion Facebook. J'utilise fosuserbundle pour gérer les utilisateurs (créer dans ce cas) et stocker le jeton Facebook lié à cet utilisateur. – Carlos