In laravel Как подтвердить пароль - PullRequest
0 голосов
/ 15 мая 2019

Я создал пользователя с зашифрованным паролем. (Bcrypt (пароль))

В остальных API я получаю md5 (пароль) [из приложения] Как подтвердить оба пароля?

\Hash::check($request->password, $user->password)

НЕ РАБОТАЕТ

Ответы [ 2 ]

1 голос
/ 15 мая 2019

Нельзя сравнивать пароли, зашифрованные разными способами. Вам нужен простой пароль. Я предполагаю, что вы пытаетесь сделать беспрепятственный доступ для пользователей вашей платформы, чтобы пользователь не входил дважды (в вашей системе и в системе провайдера API). Я прав?

В этом случае, вероятно, вам нужно подумать иначе, чтобы приблизиться к нему.

1 голос
/ 15 мая 2019

Нет прямого способа сравнить действительный пароль в Laravel.Laravel никогда не хранит ваш пароль в виде простого текста, но хешированную версию + соль, поэтому вы можете сравнить простую версию пароля с хешированной сохраненной версией, используя метод Hash::check:

// original password
$password = 'my-password';

// hashed password
$hashed_password = bcrypt($password);
// something like: "$2y$10$XFs6ocWUaiiB99QvLwTuhOuABIq71D13LmpFdeISh7RsC.SsAthHG";

Хешированная версияодин сохранен.

Если вы хотите проверить правильность пароля:

use Illuminate\Support\Facades\Hash;

// ...

$passed = Hash::check($password , $hashed_password); // true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...