Skip to content
This repository has been archived by the owner on Dec 13, 2018. It is now read-only.

Possibilité de créer son propre agenda #46

Open
EmmanuelDemey opened this issue Oct 21, 2017 · 9 comments
Open

Possibilité de créer son propre agenda #46

EmmanuelDemey opened this issue Oct 21, 2017 · 9 comments
Assignees

Comments

@EmmanuelDemey
Copy link
Collaborator

Pouvoir selectionner les conférences qui nous intéressent , et de les retrouver dans une page spécifique.
Utilisation de Firebase ?
Comment persister à travers les devices ? Via une auth Oauth ?

@fgruchala
Copy link
Member

fgruchala commented Oct 25, 2017

De souvenir, @lborie m'avait parlé d'un compte GCP avec un quota gratuit pour certaines technos. Si c'est tjrs le cas, on partirait sur du back Go + Firebase ?

Et une authentification en oauth2 avec comme fédérateur d'identité Google, Twitter, Github ? Pour cette partie, j'ai une solution : KeyCloak (http://www.keycloak.org/) qui se charge de tous les aspects : connexion, fédération, utilisateur, etc. mais ça tourne sur du wildfire (java) ...

@lborie
Copy link
Contributor

lborie commented Oct 25, 2017

Autant go, tu peux faire tourner sur appengine en quota gratuit, autant faire tourner un wildfly, on va devoir payer, et je ne trouve pas que la plus value en vaille la peine...

@fgruchala
Copy link
Member

Quelqu'un a donc une solution pour implémenter la fédération d'identité tierce ?

Si je résume pour être sûr d'avoir compris. Nous voulons proposer une authentification au travers des serveurs d'autorisations Google ou Twitter ou Github ou etc. afin de persister l'agenda.

Pour ce faire, nous devons, selon moi, avoir notre propre SSO qui va créer localement un compte utilisateur et l'associer à son compte Google ou Twitter ou Github ou etc. (la fédération d'identité).
Notre SSO sécurisera, à termes, notre front et notre back au travers d'un échange de token.

C'est bien cela ?

@lborie
Copy link
Contributor

lborie commented Oct 25, 2017

Firebase fait ça nativement il me semble...
https://firebase.google.com/docs/auth/

@fgruchala
Copy link
Member

fgruchala commented Oct 25, 2017 via email

@fgruchala
Copy link
Member

Cela dit, je réitère, avoir notre propre SSO nous permettrait d'avoir notre propre BDD utilisateur (idéal pour nos campagnes/relances mail, etc.)

Pour ma curiosité et pcq je ne connais pas le fonctionnement de GCP (et j'aimerai), ça couterait combien ?

@lborie
Copy link
Contributor

lborie commented Oct 25, 2017

Il faudrait qu'on en discute de vive voix, mais ce n'est pas parce que tu fais du SSO grâce à un service tiers que tu n'as pas ta propre base utilisateur. Le SSO te sert juste à t'éviter d'avoir à stocker un login / mdp. Par contre, le callback du SSO va te fournir nom, prénom, mail, et tout ce qui t'intéresse sur l'utilisateur...

Et je pense qu'à notre échelle, l'utilisation de firebase couterait genre... rien.

@EmmanuelDemey
Copy link
Collaborator Author

Hello

Alors je comprends bien tes problématiques François. Voilà ce que j'ai en tête, n'hésite pas à me contretir Ludo et toi. Je n'ai pas testé la solution :D et je ne suis pas un expert de OAuth

  1. Côté front faire une connexion via firebase auth . Par exemple ici avec twitter : https://firebase.google.com/docs/auth/web/twitter-login

A partir du retour de la requête, tu vas recevoir le token, mais également les informations de l'utilisateur. Attention, cet objet doit être différent en fonction du provider (Google vs Github vs Twitter)

firebase.auth().getRedirectResult().then(function(result) {
  if (result.credential) {
    // This gives you a the Twitter OAuth 1.0 Access Token and Secret.
    // You can use these server side with your app's credentials to access the Twitter API.
    var token = result.credential.accessToken;
    var secret = result.credential.secret;
    // ...
  }
  // The signed-in user info.
  var user = result.user;
}).catch(function(error) {

});

Cet utilisateur rien de t'empeche de l'envoyer au back GO (si vous choisissez GO) afin de le persister dans une base firebase ?

A partir de cet utilisateur persisté, nous pourrons lui ajouter les conférences qu'il a choisi. Pour chaque requête envoyée, faudra passer le token au back pour pouvoir persister l'agenda au bon utilisateur.

@fgruchala
Copy link
Member

fgruchala commented Oct 25, 2017 via email

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants