Ground Sunlight

Windowsで作る - PHPプログラミングの開発環境

ユーザ用ツール

サイト用ツール


apricot:ext:csrf

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
apricot:ext:csrf [2020/05/24 15:48]
y2sunlight [テスト実行]
apricot:ext:csrf [2020/06/08 11:16] (現在)
tanaka [ミドルウェア]
行 1: 行 1:
->編集中 
- 
------ 
- 
 ====== Apricot CSRF対策 ====== ====== Apricot CSRF対策 ======
  --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-05-15//  --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-05-15//
行 37: 行 33:
 |static\\ generate()|セッション内のCSRFトークンが未生成の場合、生成してセッションに格納します。| |static\\ generate()|セッション内のCSRFトークンが未生成の場合、生成してセッションに格納します。|
  
-これらのメソッドは[[#ミドルウェア|ミドルウェア]]で使用することを想定しています。HTMLに埋め込むCSRFトークンはセッションから取得して下さい(後述の[[#BladeOneのカスタマイズ|BladeOneのカスタマイズ|]]を参照)。+これらのメソッドは[[#ミドルウェア|ミドルウェア]]で使用することを想定しています。HTMLに埋め込むCSRFトークンはセッションから取得して下さい(後述の[[#BladeOneのカスタマイズ|BladeOneのカスタマイズ]]を参照)。
  
 CsrfTokenクラスを以下に示します。 CsrfTokenクラスを以下に示します。
  
-{{fa>folder-open-o}} ** /apricot/core/Security/ **+{{fa>folder-open-o}} ** /apricot/core/Foundation/Security **
 <code php CsrfToken.php> <code php CsrfToken.php>
 <?php <?php
行 117: 行 113:
  
 {{fa>folder-open-o}} ** /apricot/app/Middleware ** {{fa>folder-open-o}} ** /apricot/app/Middleware **
-<code php CsrfToken.php>+<code php VerifyCsrfToken.php>
 <?php <?php
 namespace App\Middleware; namespace App\Middleware;
行 306: 行 302:
 [{{apricot:ext:ext03.png?nolink}}] [{{apricot:ext:ext03.png?nolink}}]
 ■ ''VerifyCsrfToken Error'' のメッセージと共にWhoopsのエラー画面が出力されます。\\  ■ ''VerifyCsrfToken Error'' のメッセージと共にWhoopsのエラー画面が出力されます。\\ 
-■ これは CSRFトークンがサーバーに送信されていないので発生する例外です。+■ これは CSRFトークンがサーバーに送信されていないので発生する例外です。\\ 
 +■ 尚、本番用のエラー画面を出力したい場合は、.env の ''APP_DEBUG'' をfalseに設定してからテストして下さい。 
 + 
 +<div indent 60%> 
 +<code ini .env> 
 +.... 
 +APP_DEBUG=false 
 +.... 
 +</code> 
 +</div>
  
-テスト後は、@csrf を元に戻しておいて下さい。+テスト後は、''@csrf'' や ''APP_DEBUG'' を元に戻しておいて下さい。
  
 \\ \\
apricot/ext/csrf.1590302933.txt.gz · 最終更新: 2020/05/24 15:48 by y2sunlight