Le Problème:
Servir sûr API côté client app en utilisant seulement un local, la stratégie d'authentification.
Les flèches rouges sont en partie les lacunes de la connaissance.
Contexte:
C'est - - - - client.example.com
est de faire un POST pour api.example.com/login
où la réussite client.example.com
pouvez accéder à un OBTENIR un service comme api.example.com/secret
.
Une idée!
Implémentation de l'authentification OAuth 2.0 hybrid type de subvention assis en face de l'API.
Pourquoi hybride?
Ce ne serait pas une
Implicit Grant Flow
akaClient-Side Web Applications Flow
car il n'y a pas de redirection de l'API serveur trop grant jeton d'accès. (c) "Est-il ok pour soi-et-pour ainsi accéder à vos données?"Il ne serait pas un
Resource Owner Password Flow
parce qu'un Client ID et la clé Secrète Client sont transmis en même temps que la demande de sorte qu'il est supposé l'application cliente est côté serveur.
OK... donc, qu'un peu des deux?
Que faire si nous avons utilisé un FSCC jeton sur la page de la charge de client-côté application, et la POSTE avec les informations d'identification utilisateur trop une authentification OAuth 2.0 extrémité d'échange de jeton d'accès? Vous authentifier à chaque demande ultérieure, avec le jeton d'accès et de la FSCC jeton après une connexion réussie.
Une bonne Node.js OAuth 2.0 de la bibliothèque, j'ai trouvé:
https://github.com/ammmir/node-oauth2-provider
Aidez-Moi!
Je ne peux pas trouver un exemple de travail d'une authentification de mesure qui permet de résoudre ce problème! Me pointer dans la bonne direction?
En fin de compte, le but ici est trop authentifier un client côté application d'une api REST à l'aide de la SCRO avec une stratégie locale --- c'est à dire nom d'utilisateur et mot de passe --- même si la convention ci-dessus n'est pas possible.
Pour Accueillir Générosité:
C'est un client côté application, nous allons donc rester tendance.
Je suis à la recherche d'un exemple de travail à l'aide de la Node.js OAuth 2.0 graines au-dessus de l'API/Auth server et un front end framework comme Angular.js ou Backbone.js pour faire des demandes.
L'exemple doit correspondre au contexte décrit ci-dessus.