ホームページ > バックエンド開発 > PHPチュートリアル > laravel 5でXSS防御用のミドルウェアを作成するにはどうすればよいですか?

laravel 5でXSS防御用のミドルウェアを作成するにはどうすればよいですか?

藏色散人
リリース: 2023-04-05 13:20:01
オリジナル
3673 人が閲覧しました


XSS フィルターは入力値から html タグを削除する可能性があるため、セキュリティ上の理由から html タグを削除することが重要です。 laravel 5.2では、プロジェクトでミドルウェアの概念を使用することでこれを実現できます。

laravel 5でXSS防御用のミドルウェアを作成するにはどうすればよいですか?

次に、laravelアプリケーションでXSSフィルタリングミドルウェアを作成する方法を紹介します。

まず、次のコマンドを起動してミドルウェアを作成します。

ミドルウェアの作成

php artisan make:middleware XSS
ログイン後にコピー

これで、app/ にミドルウェアを作成できます。 Http/Middleware /XSS.php に移動し、次のコードを XSS.php ファイルに配置します。

XSS.php

namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
class XSS
{
    public function handle(Request $request, Closure $next)
    {
        $input = $request->all();
        array_walk_recursive($input, function(&$input) {
            $input = strip_tags($input);
        });
        $request->merge($input);
        return $next($request);
    }
}
ログイン後にコピー

最後に、ミドルウェアを app/Http/Kernel.php ファイルに登録する必要があります。そして、$routeMiddleware 配列に次の行を追加します。

Kernel.php

class Kernel extends HttpKernel
{
	....
    protected $routeMiddleware = [
        'auth' => \App\Http\Middleware\Authenticate::class,
        ....
        'XSS' => \App\Http\Middleware\XSS::class,
    ];
}
ログイン後にコピー

これで、ルーティング .php ファイルで XSS ミドルウェアを使用できるようになります。次のルーティング .php ファイルでこれを行うことができます:

routes.php

Route::group(['middleware' => ['XSS']], function () {
  Route::get('customVali', 'CustomValDemoController@customVali');
  Route::post('customValiPost', 'CustomValDemoController@customValiPost');
});
ログイン後にコピー

関連laravelビデオチュートリアル: "最新laravel mall実践ビデオチュートリアル"

関連ブログお勧め: "SQL インジェクションと XSS 攻撃に対する防御"

この記事は、laravel 5 で XSS 防御用のミドルウェアを作成する方法の紹介です。必要な友人の役に立てば幸いです。 !


以上がlaravel 5でXSS防御用のミドルウェアを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート