39 votes

Module Token Authenticatable dans Devise

Je commence à utiliser Devise dans mon application Rails, mais la fonction Token Authenticatable : inscrire un utilisateur sur la base d'un jeton d'authentification (également appelé "jeton d'accès unique") module me laisse perplexe.

L'utilisateur est-il authentifié uniquement pour sa session en cours ? S'il utilise maintenant l'URL contenant le jeton, peut-il le réutiliser ultérieurement et conserver l'accès, ou reçoit-il un message d'avertissement ? simple accès ?

Plusieurs utilisateurs peuvent-ils être authentifiés en même temps, en utilisant le même jeton ?

J'ai beaucoup cherché pour trouver un exemple fonctionnel ; veuillez me pardonner si cela est expliqué ailleurs. Toute indication est la bienvenue. Merci pour votre aide.

25voto

Brandon Tilley Points 49142

La réponse courte est : c'est à vous de décider.

Ce module ne fournit que quelques helpers pour vous aider à gérer le jeton, mais c'est à vous de choisir comment l'utiliser. Par exemple, si vous voulez avoir un nouveau jeton chaque fois que l'utilisateur sauvegarde son compte, vous pouvez faire comme suit :

before_save :reset_authentication_token

D'autre part, si vous voulez générer un jeton à moins qu'il n'en existe un, vous devriez utiliser à la place :

before_save :ensure_authentication_token

Si vous souhaitez supprimer le jeton après qu'il a été utilisé, vous pouvez le faire dans le callback after_token_authentication callback.

Voir la documentation de ce modèle à l'adresse http://rdoc.info/github/plataformatec/devise/master/Devise/Models/TokenAuthenticatable .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X