Laravel: qu'est-Ce que “remember_token” dans les “utilisateurs” de la table DB?
Est-il sécuritaire d'utiliser la remember_token
dans la table des utilisateurs pour l'authentification de l'utilisateur dans l'application?
Quel est le but de ce jeton? Actuellement, je suis à l'utiliser dans les formulaires pour vérifier si l'utilisateur est connecté - si le jeton n'est pas présent, je montre l'écran de connexion. Chaque fois que l'utilisateur se déconnecte, ce jeton est régénéré.
OriginalL'auteur Onion | 2014-04-24
Vous devez vous connecter pour publier un commentaire.
Pas. Il n'est pas censé être utilisé pour s'authentifier. Il est utilisé par le framework pour aider à lutter contre le
Remember Me
cookie détournement. La valeur est actualisée lors de la connexion et de déconnexion. Si un cookie est pris en otage par une personne malveillante, l'exploitation forestière rend les détourné cookie inutile car il ne correspondent plus.Référence à cette documentation:
https://laravel.com/docs/upgrade#upgrade-4.1.26
OAuth est tout simplement en toute sécurité pour l'établissement de la croix-l'authentification de l'origine. Bonne chance et attention, ne prenez pas cela à la légère, car vous pouvez ouvrir l'ensemble de votre base de données pour le public et ne pas être au courant de ce! J'ai passer des jours de lecture et de sandboxing des projets animal et je suis encore un noob! 🙂
1. L'enregistrement de l'utilisateur avec l'API (base de données qui utilise OAuth). 2. L'utilisateur se connecte à l'application, l'application envoie une demande pour un jeton et l'obtient parce que l'utilisateur est valide. 3. L'utilisateur peut faire des requêtes à l'aide du jeton pour valider. Dans une coquille de noix. 🙂
J'ai toujours utiliser le facteur de REPOS client pour faire mes tests. chrome.google.com/webstore/detail/postman-rest-client/...
J'ai créé un salon de discussion pour continuer la conversation dans le bon endroit. chat.stackoverflow.com/rooms/51330/...
OriginalL'auteur sidneydobber
J'ai dû ajouter de la
remember_token
à ma table users de migration pourAuth::logout()
pour fonctionner correctement.Ajouté
remember_token
à mon migrations en tant que tel.À partir de la ligne de commande, vous devez laisser tomber la table des utilisateurs, puis migrer/semence.
$table->string('remember_token', 100);
Et ->nullable () ", vous devez vérifier que vos utilisateurs (ou l'équivalent) tableau contient un nullable, chaîne remember_token colonne de 100 caractères"
OriginalL'auteur Cyril T
Même si ce une vieille question, j'ai voulu présenter une possibilité de ne pas utiliser le jeton si vous n'en avez pas besoin (par exemple, n'ont aucun souvenir de moi l'option sur votre site).
Au lieu d'ajouter un mannequin de la colonne de votre table des utilisateurs, vous pouvez simplement éviter Auth::logout() à partir de réglage.
Juste ajouter ceci à votre modèle d'Utilisateur (fonctionne aussi de Laravel 5.6):
Cela supprime le 'remember_token' colonne, juste avant que le modèle est enregistré et donc d'empêcher une erreur à être augmenté en raison de la non-existant colonne.
OriginalL'auteur LinusCDE98
Laravel fournit un CSRF jeton dans un caché d'entrée, il ajoute automatiquement et valide chaque fois qu'un formulaire est soumis, si vous êtes connecté ou non. Si vous êtes à l'aide de leur générateur de Formulaire, ce qui se passe sans même avoir besoin de vérifier sur elle.
Vous devriez vérifier si l'utilisateur est connecté sur la soumission à l'aide de la
Auth
façade.OriginalL'auteur DanielM