laravel 5.5 更改默认的密码加密方法
2023-09-11 14:19:35 时间
laravel 由于很多数据是导入的,采用的是md5加密密码,但是laravel 默认的是使用bcrypt加密,所以需要更改,需要重写Auth中的attempt方法中的密码加密方法。
$request_params=$request->only(['username','password']); /*attempt默认使用bcrypt加密*/ if(Auth::guard('chatService')->attempt($request_params)) { return response()->json(['msg'=>'登陆成功','code'=>200]); }else { return response()->json(['msg'=>'登陆失败','code'=>400]); }
第一步:在vendor\laravel\framework\src\Illuminate\Hashing 新建Md5Hasher文件写入以下内容、
<?php namespace Illuminate\Hashing; use RuntimeException; use Illuminate\Contracts\Hashing\Hasher as HasherContract; /*增加MD5加密*/ class Md5Hasher implements HasherContract { public function check($value, $hashedValue, array $options = []) { return $this->make($value) === $hashedValue; } public function needsRehash($hashedValue, array $options = []) { return false; } public function make($value, array $options = []) { $value = env('SALT', '').$value; return md5($value); } }
第二步:
1)建立 MD5HashServiceProvider
php artisan make:provider MD5HashServiceProvider
2)写入以下内容:
<?php namespace App\Providers; use Illuminate\Hashing\Md5Hasher; use Illuminate\Support\ServiceProvider; class MD5HashServiceProvider extends ServiceProvider { /** * Bootstrap the application services. * * @return void */ public function boot() { $this->app->singleton('hash',function () { return new Md5Hasher(); }); } /** * Register the application services. * * @return void */ public function register() { } public function provides() { return ['hash']; // TODO: Change the autogenerated stub } }
3)更改config/app.php
'providers' => [ /* * Laravel Framework Service Providers... 将原来的 Illuminate\Hashing\HashServiceProvider::class更改 */ App\Providers\MD5HashServiceProvider::class,
参考:https://learnku.com/articles/5963/toggle-laravel-login-default-bcrypt-encryption-validation
相关文章
- Linux 能ping通,ssh连接服务器一直提示输入密码
- Linux用不同的方法来检查密码的复杂性并获取强度和得分
- 渗透测试-跨站请求伪造(CSRF)之修改密码及防御方法
- 数据安全:巧妙解决由密码过期导致的用户锁定问题
- Centos 7.x系统下忘记用户登录密码,重置密码的方法
- Linux--忘记MySQL密码的解决方法和输入mysqld_safe --skip-grant-tables &后无法进入MySQL的解决方法
- Linux下如何创建新用户并设置密码及删除用户
- Harbor密码重置 密码修改 admin密码重置
- 后渗透——权限维持之获取系统管理员administrator密码
- mysql添加用户和密码
- Django重写User模型修改明文密码加密方法
- idea 修改Git密码和账号方法
- B站青少年模式忘记密码怎么解决(非官网解决方法)
- 织梦cms忘记后台登录密码的三种解决方法
- windows 下mysql 重设root密码方法
- MySQL修改root密码的各种方法整理
- 免遭勒索软件侵害必备技能之:两种方式解除恶意密码加密
- 2015年最弱的密码,和最强的密码
- iPhone 5C密码又遭破解:神奇方法打脸FBI
- 算法题:李嘉诚保险柜密码问题
- FTP设置用户名和密码
- mongodb 修改用户密码 2种方法
- Centos 6/7 忘记root密码处理方法
- [转载]Ubuntu 14.04中root 密码忘记解决方法