我有一个站点,其中使用Laravel的Hash::make()函数散列用户密码。
我现在需要直接在DB (MySQL)中手动创建用户。我是否可以使用原始SQL为用户创建散列密码?
发布于 2015-02-09 11:11:39
恐怕不太好。Laravel使用Bcrypt,这在MySQL中是不可用的。此外,在原始SQL中这样做是一种错误的做法,因为密码可能最终会出现在服务器查询日志中。抱歉的。:/
发布于 2016-10-18 11:52:20
您可以通过php artisan tinker创建您想要的密码
php artisan tinker。echo Hash::make('password');您将看到哈希密码。您可以使用该密码做任何您想做的事情,甚至直接使用sql查询。
发布于 2015-02-09 11:19:15
您可以在Laravel中使用DB Seed选项并以这种方式添加用户。通过DB种子,您可以使用哈希方法对密码进行散列。
class UserTableSeeder extends Seeder {
public function run()
{
DB::table('users')->delete();
User::create(array(
'username' => 'user',
'password' => Hash::make('password')
));
}
}但是如果只能使用原始SQL,我就没有解决方案了。
有关DB种子的更多信息,请参见下面的页面。http://laravel.com/docs/4.2/migrations#database-seeding
https://stackoverflow.com/questions/28408275
复制相似问题