Je suis en train de construire une api simple avec Rails de l'API, et veulent s'assurer que je suis sur la bonne voie. Je suis l'aide de concevoir pour gérer les connexions, et a décidé d'aller avec Concevoir l' token_authenticatable
option, ce qui génère une clé API que vous devez envoyer à chaque requête.
Je suis d'appariement de l'API avec un backbone/marionnette avant la fin et je suis généralement demandais comment je dois gérer les sessions. Ma première pensée a été de stocker la clé de l'api dans le local de stockage ou d'un cookie, et de les récupérer au chargement de la page, mais quelque chose à propos de l'enregistrement de la clé api de cette façon m'a dérangé à partir d'un point de vue sécurité. Ne pas être faciles à saisir la clé de l'api, soit par la recherche dans le local de stockage/le cookie ou renifler toute demande qui va de travers, et l'utiliser pour usurper l'identité de cet utilisateur indéfiniment? Je suis actuellement la réinitialisation de la clé api de chaque connexion, mais même cela semble souvent - tout le temps de vous connecter sur n'importe quel appareil, cela signifie que vous serais connecté sur tous les autres, qui est une sorte de douleur. Si j'ai pu laisser tomber ce reset, je se sentir comme il permettrait d'améliorer à partir d'un point de vue de l'utilisabilité.
Je suis peut-être totalement faux (et j'espère que je suis), quelqu'un peut-il expliquer si l'authentification de cette façon, de manière fiable, sécurisé, et si pas ce qu'est une bonne alternative serait? Dans l'ensemble, je suis à la recherche d'une façon de me garder en toute sécurité les utilisateurs "signé" pour accéder à l'API souvent sans forcer re-auth.