سبد خرید شما خالیست

پکیج های امنیتی لاراول

امنیت همیشه سر لوحه کار هر برنامه نویس است. زمانی که با فریم ورک لاراول کار می کنید نیز باید به این مورد توجه کنید! لذا در این مقاله با پکیج های امنیتی لاراول جهت افزایش امنیت اپلیکیشن های لاراول آشنا می شوید.

لاراول سعی کرده تا بیشتر خطا های برنامه نویس را برطرف کند ، که این خود باعث افزایش امنیت وب سایت لاراولی می شود.

همچنین خود فریم ورک لاراول هر بار آپدیت می شود و نسخه های فیکس شده ایمن تری را بعلاوه امکانات بیشتر نیز ارائه می دهد.

اما با وجود این ها دلیل نمی شود که برنامه نویس بخواهد خطا کند و کد نویسی ایمن را نادیده بگیرد!

۱-  پکیج امنیتی لاراول ۱

پکیج laravel-security شامل هسته اصلی Symfony Security در لاراول است که عمدتا برای چک کردن دسترسی به role ها و object ها به کار می رود.

برای نصب این پکیج کافی است وابستگی (dependency) زیر را به فایل composer.json اضافه کنید و سپس دستور composer update را اجرا کنید.

"barryvdh/laravel-security": "0.2.x@dev"

سپس باید این پکیج را به ServiceProvider در مسیر config/app.php معرفی کنید :

'Barryvdh\Security\SecurityServiceProvider'

در نهایت می توانید Fasade این پکیج را نیز به لیست فساد های لاراول اضافه کنید :

'Security' => 'Barryvdh\Security\Facade',

۲ – پکیج امنیتی لاراول ۲

 Laravel Security  دارای کلاس های امنیتی CodeIgniter 3 می باشد

برای استفاده از این پکیج باید از PHP 7.1 به بالا استفاده کنید. و برای نصب :

composer require graham-campbell/security

سپس باید آن را به Service Provider معرفی کنید :

GrahamCampbell\Security\SecurityServiceProvider

و فساد آن را نیز به فساد های لاراول اضافه کنید :

'Security' => GrahamCampbell\Security\Facades\Security::class,

برای ادامه کار نیاز به پیکربندی laravel Security دارید . ابتدا تمام asset ها را ایجاد می کنیم :

php artisan vendor:publish

حالا فایل config/security.php ساخته می شود که می توانیم تمام پیکربندی های امنیتی را داخل آن انجام دهیم.

۳- HTMLPurifier

یک service provider ساده برای لاراول است برای فراخوانی HTMLPurifier در لاراول می باشد.

با استفاده از کامپوزر (composer) به راحتی می توانید این پکیج را نصب کنید :

composer require mews/purifier

لاراول ۵٫۰ تا ۵٫۴ :

برای استفاده از HTMLPurifier Service Provider باید Provider را در زمانی که اپلیکشین لاراول در حال bootstrapping  است تعریف کنید.

لاراول بالاتر از ۵٫۴ :

دیگر نیازی به این کار نیست و به صورت خودکار Service Provider اضافه می شود.

برای پیکربندی این پکیج باید فایل پیکربندی آن را ایجاد کنیم  (config/purifier.php) :

php artisan vendor:publish --provider="Mews\Purifier\PurifierServiceProvider"

یک نمونه مثال جهت استفاده از HTMLPurifier :

Purifier::clean(Input::get('inputname'));

۴- کنترل ورودی ها در لاراول

همانطور که می دانید در بحث ایمن سازی باید ورودی های کاربر یا هکر را کنترل کرد.

یکی دیگر از پکیج های امنیتی لاراول ، binput است که ورودی های کاربر را کنترل می کند و element های خطرساز را مانند تگ <script> را فیلتر می کند.

composer require graham-campbell/binput

Service Provider این پکیج به طور خودکار اضافه می شود و برای ادامه کار نیاز است فساد آن را نیز معرفی کنیم :

'Binput' => GrahamCampbell\Binput\Facades\Binput::class,

متد های 'all''get''input''only''except', و'old' برای استفاده وجود دارند.

// request input data: ['test' => '123', 'foo' => '<script>alert(\'bar\');</script>    ']

$input = Binput::all(); // ['test' => '123', 'foo' => '[removed]alert&#40;\'bar\'&#41;;[removed]']

۵- کنترل قدرت رمز عبور ها در لاراول

با استفاده از از پکیج laravel-password می توانید قدرت رمز عبور های کاربران را کنترل کنید و از رمز عبور های ایمن تری استفاده کنید.

۶- هدر های امنیتی در لاراول

پکیج Secure Headers ،هدر های امنیتی را به درخواست های Http اضافه می کند :

composer require bepsvpt/secure-headers

بعد از نصب باید فایل پیکربندی یا config را ایجاد کنیم :

php artisan vendor:publish --provider="Bepsvpt\SecureHeaders\SecureHeadersServiceProvider"

سپس یک میان افزار ( Middleware ) را در مسیر app/Http/Kernel.php  باید تعریف کنیم :

\Bepsvpt\SecureHeaders\SecureHeadersMiddleware::class,

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد.