このチュートリアルでは、アプリケーションで不要なリクエストが行われないように、Lithe に CSRF (クロスサイト リクエスト フォージェリ) 保護を実装する方法を学びます。このガイドは初心者向けに設計されているので、何回かに分けて見ていきましょう!
CSRF (クロスサイト リクエスト フォージェリ) は、ユーザーがだまされて、認証されている Web サイト上で不正なアクションを実行する攻撃の一種です。攻撃者はデータを操作したり、制限された領域にアクセスしたりできるため、この攻撃は危険です。これを防ぐために、不審なリクエストの処理を防ぐセキュリティ層を追加しました。
始めましょう!
Lithe をまだ構成していない場合は、以下のコマンドを使用してフレームワークをインストールすることから始めます:
これにより、Lithe プロジェクトの基本構造が作成されます。
CSRF ミドルウェアは、CSRF トークンの生成と検証に役立ちます。インストールするには、プロジェクト内のターミナルで次のコマンドを実行します:
次に、CSRF ミドルウェアを使用したいことを Lithe に伝える必要があります。メイン ファイル src/App.php を開き、CSRF ミドルウェアを追加します。
これにより、CSRF ミドルウェアがアプリケーションでアクティブになり、保護が必要なすべてのリクエストに有効なトークンが含まれている必要があります。
CSRF 保護を使用するには、一意のトークンを生成し、リクエストに含める必要があります。 CSRF トークンを自動的に含むフォームを送信するルートを作成しましょう。
フォームが送信されると、Lithe はトークンが有効かどうかを自動的にチェックします。次に、フォームを受信して処理するルートを作成しましょう。
トークンが無効または欠落している場合、Lithe は自動的にリクエストをブロックし、エラーを返します。
フロントエンドでは、POST リクエスト (またはその他のデータ変更メソッド) を送信する必要がある場合は常に、ミドルウェアの構成方法に応じてリクエストの本文またはヘッダーに CSRF トークンを含めることが重要です。
JavaScript を使用している場合は、フェッチ リクエストでトークンを送信する方法の例を次に示します。
このチュートリアルでは次のことを学びます:
この保護を実装すると、CSRF 攻撃に対するアプリケーションの安全性が高まり、ユーザーのデータの整合性の保護に役立ちます。
さらに詳しい情報については、Lithe の公式ドキュメントをご覧ください。
以上がLithe の CSRF を使用してアプリケーションを保護するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。