2016-09-27 4 views
2

私はremeber_tokenフィールドをusersテーブルに持っています。そして、私はそれがどのように生成されるかについてかなり混乱していますか?私は2人の異なるユーザーのためにデータベースに2種類のトークンを見ることができるからです。覚え書きトークンはどのように生成されますか?

mFqEE5PUS4ZlOdQ51WEomGqJ1vFQCzw6zumvvW8rkpBUclC161HtvK8LsXXP

や種類の他の:どのようにそれはそう

78x6c35esh2Ya0g4fb1d9 

のですか?そして、トークンを覚えていて、異なるアルゴリズムで生成されたパスワードトークンを忘れてしまった?

+0

覚えやすいトークンの長さが異なる2人のユーザー、または覚えているトークンの長さがリセットトークンと異なることを意味しますか? –

+0

@svenは覚えていないトークンであり、リセットトークンは同じ 'remember_token'フィールドで更新されますか? –

+0

正しく覚えていれば、password_resetsという名前のテーブルがあるhttps://laravel.com/docs/5.2/authentication#resetting-passwords –

答えて

1

Iはinto the codeを見て、それがthe docsからトークン

protected function refreshRememberToken(AuthenticatableContract $user) 
{ 
    $user->setRememberToken($token = Str::random(60)); 
    $this->provider->updateRememberToken($user, $token); 
} 

を生成するために、以下の機能を有する:

str_random()

str_random関数は、ランダムな文字列を生成します指定された長さこの関数は、PHPのrandom_bytes機能を使用しています。

トークン

mFqEE5PUS4ZlOdQ51WEomGqJ1vFQCzw6zumvvW8rkpBUclC161HtvK8LsXXP

は、私は他のトークンが少ないを持っている理由を知らない、60個の文字を持っています。

+0

パスワードのリセットは同じですか? –

関連する問題