Laravel 5 で制御文字を禁止するバリデーションルールを追加する

Laravel 5 で制御文字を禁止するバリデーションルールを追加する

ウェブアプリケーションにもいろいろありますが、制御文字を受け入れる必要のないパラメータは割と多いんじゃないかと思います。そのようなパラメータでは、最初から制御文字を受け入れないようになっていれば、セキュリティ面のリスクも減ります。そこで今回は、Laravel 5 を使ったウェブアプリケーションで、制
Read more…

PHPで画像ファイルかどうかを検証する(Laravel)

PHPで画像ファイルかどうかを検証する(Laravel)

特定のファイルが画像ファイルかどうかを検証するPHPの関数を書いてみました。ウェブサイトにアップロードされた画像ファイルを検証する時などに使うことを想定しています。 GIF/JPEG/PNG のみ対象としています。 Laravelを使っていることを前提としているので、エラー発生時には ErrorEx
Read more…

Laravel 5 で入力パラメータ値の文字エンコーディングをチェックするMiddlewareを追加する

Laravel 5 で入力パラメータ値の文字エンコーディングをチェックするMiddlewareを追加する

セキュリティのリスクを少しでも減らすために、想定している文字エンコーディング以外の文字がパラメータとして送信されても受け付けないようにします。 1.以下のミドルウェアを作成する app/Http/Middleware/EncodingValidateParams.php として、パラメータ値の文字エ
Read more…

Laravel 5 の Global Middleware ではルートの名前がとれない?

Laravel 5 の Global Middleware ではルートの名前がとれない?

※ ここで「ルートの名前」と言っているのは名前付きルートによる名前のことです。 Laravel 5 には Middleware という機能が組み込まれていて、コントローラの処理が実行される前にいろいろな処理を追加することができます(レスポンス送信後に実行する処理も記述可能)。従来デフォルトで組み込ま
Read more…