以前、WordPressのプラグインでも紹介した、Googleが提供している人間とロボットのどちらによる操作かを判別するためのセキュリティ強化ツール、CAPTCHA認証機能をLaravelにパッケージを利用して導入する方法をご紹介します。
あわせて読みたい
key
を取得するなどの下準備は、上記の記事で完了しているものとして進めていきます。
目次
Google captcha for Laravelの使い方
こちらのLaravelのパッケージを利用すれば、とても簡単にCAPTCHA認証を導入することができます。
GitHub

GitHub – thinhbuzz/laravel-google-captcha: Google captcha for Laravel, support multiple captcha on p…
Google captcha for Laravel, support multiple captcha on page – thinhbuzz/laravel-google-captcha
パッケージのインストールと設定
まずは、いつものようにcomposer
コマンドでインストールします。
次に、以下をconfig/app.php
のproviders
に追加しますが、Laravel 5.5以降は不要です。
そして、公開設定をするとconfig
以下にcaptcha.php
の設定ファイルが作成されます。
作成されたconfig/captcha.php
を確認したらわかるように、.env
ファイルにGoogleで取得したキーを設定する必要があります。
CAPTCHAをフォームに追加する
今回は例として、ログインフォームに追加してみました。
Captcha::display()
の箇所以外は他の入力フォームと変わりませんね。
ビュー側(blade)で書くのはこれだけです。
カスタムログインバリデーション
CAPCHA用のバリデーションを追加しますので、validateLogin
メソッドを利用して
まずは、Request
を使用する宣言を追加
そして、通常のログインバリデーションの最後CAPCHA用のバリデーションを追加します。
Laravel News


Learn how to change Laravel’s login validation – Laravel News
Laravel’s included auth system is a great way of scaffolding out a basic flow for authenticating users through a complete registration, login, logout, and forgo…
app/Http/Controllers/Auth/LoginController.php
以上で完了です。
その他にも会員登録やお問い合わせフォームなどでも活躍しそうですね!
コメント