امروز می خواهیم در مورد جلوگیری از ورود پسوردهای معمول و ساده از طرف کاربران صحبت کنیم. این کار رو با استفاده از پکیج laravel-password انجام میدیم که به سادگی میشه از قانون ارزیابی dumbpwd استفاده کرد.
همینطور که میدونیم امنیت یک کلید برای وبسایت یا نرم افزار هست. اگر شما یک اکانت جدید می سازید و از پسوردهای معمول مثل 123456 یا 123123 یا abcd استفاده کنید, این نوع پسوردها قابل حدس هستند و میتونه باعث ایجاد مشکلات امنیتی بشوند. بنابراین ما باید راهی پیدا کنیم تا از ثبت این نوع پسورد ها جلوگیری کنیم.
در این مقال می خواهیم طریقه ی جلوگیری از ثبت این پسوردها رو با استفاده از قانون ارزیابی لاراول یاد بگیریم. لاراول بصورت پیشفرض این کار رو انجام نمیده برای همین ما از پکیج laravel-password استفاده می کنیم.
پس قدم های زیر رو دنبال کنید تا در نهایت به یک چیزی شبیه تصویر زیر برسید :
قدم اول - نصب لاراول
برای اینکار ما از لاراول نسخه 5.4 استفاده می کنیم. ترمینال خود رو باز کرده و دستور زیر رو اجرا کنید :
composer create-project --prefer-dist laravel/laravel blog
قدم دوم - ساخت احراز هویت
اگر شما از پایه پروژه رو شروع می کنید باید مطمئن بشید تنظیمات دیتابیس در فایل env. انجام شده و migration اجرا شده باشه. بعد از اینکار ما auth رو برای صفحات login, register می سازیم :
php artisan make:auth
قدم سوم - نصب پکیج
در این قدم ما باید پکیج laravel-password رو برای دسترسی به متد قانون ارزیابی نصب کنیم پس در ترمینال دستور زیر رو اجرا کنید :
composer require unicodeveloper/laravel-password
بعد از نصب اون باید فایل config/app.php باز کرده و provider مربوطه رو اضافه کنید :
'providers' => [
....
Unicodeveloper\DumbPassword\DumbPasswordServiceProvider::class
],
.....
قدم چهارم - افزودن پیام ارزیابی
بعد از نصب پکیج ما باید پیام سفارشی رو برای ارزیابی بیافزاییم. پس بصورت زیر عمل کنید :
//resources/lang/en/validation.php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'dumbpwd' => 'You are using a dumb password abeg',
....
قدم پنجم - استفاده از قانون ارزیابی
حالا ما برای استفاده از قانون ارزیابی dumbpwd آماده ایم, پس بصورت زیر استفاده کنید :
//app/Http/Controllers/Auth/RegisterController.php
namespace App\Http\Controllers\Auth;
use App\User;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Validator;
use Illuminate\Foundation\Auth\RegistersUsers;
class RegisterController extends Controller
{
/*
|--------------------------------------------------------------------------
| Register Controller
|--------------------------------------------------------------------------
|
| This controller handles the registration of new users as well as their
| validation and creation. By default this controller uses a trait to
| provide this functionality without requiring any additional code.
|
*/
use RegistersUsers;
/**
* Where to redirect users after registration.
*
* @var string
*/
protected $redirectTo = '/home';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest');
}
/**
* Get a validator for an incoming registration request.
*
* @param array $data
* @return \Illuminate\Contracts\Validation\Validator
*/
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|min:6|dumbpwd|confirmed',
]);
}
/**
* Create a new user instance after a valid registration.
*
* @param array $data
* @return User
*/
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
}
}
حالا اپلیکیشن آمادست کافیه php artisan serve رو اجرا کرده و آدرس http://localhost:8000/ رو باز کنید.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید