현재 위치: > 최신 기사 목록> Laravel 5.5 CSRF 토큰 보호를 끄는 세 가지 방법

Laravel 5.5 CSRF 토큰 보호를 끄는 세 가지 방법

gitbox 2025-07-07

CSRF 토큰 보호를 끄는 세 가지 방법

토큰을 기준으로 CSRF 보호를 끄십시오

Laravel 5.5 이전에 Laravel은 기본적으로 토큰 기반 CSRF 보호를 통해 응용 프로그램 보안을 보장했습니다. 그러나 일부 개발 시나리오에서는 추가 복잡성을 피하기 위해이 보호를 해제해야 할 수도 있습니다. kernel.php 파일을 수정하여이를 수행 할 수 있습니다.

먼저 앱 \ http \ kernel.php 파일을 열고 $ middlewaregroups 속성에서 구성 배열을 찾은 다음 다음 코드를 추가하십시오.

 
protected $middlewareGroups = [
    'web' => [
        // ...
        App\Http\Middleware\VerifyCsrfToken::class => function ($request, $next) {
            return $next($request);
        },
    ],
];

verifycsrftoken :: 클래스 미들웨어를 익명 함수로 정의함으로써 토큰 기반 CSRF 보호를 성공적으로 끕니다.

라우팅 레벨에서 CSRF 보호를 끄십시오

특정 경로에서 CSRF 보호를 비활성화하려는 경우 Laravel은 CSRF_Exempt 메소드를 제공하여 경로 정의에서 CSRF 보호를 별도로 끕니다. 예를 들어:

 
Route::post('/api/posts', [
    'middleware' => 'auth.basic',
    'uses' => 'PostController@store',
])->csrf_exempt();

이 방법을 사용하면 지정된 경로에서 CSRF 보호를 비활성화 할 수 있습니다.

CSRF 보호 구성 요소를 끄십시오

마지막으로, verifycsrftoken.php 파일을 수정하여 전체 CSRF 가드 구성 요소를 닫을 수도 있습니다. 파일은 앱 \ http \ middleware 디렉토리에 있습니다. 파일을 열고 핸들 메소드에서 코드를 댓글을 달아주십시오.

 
class VerifyCsrfToken extends Middleware
{
    protected $except = [];

    public function handle($request, Closure $next)
    {
        // return parent::handle($request, $next);
        return $next($request);
    }
}

parent :: handle ($ request, $ next)을 댓글을 달아 전체 CSRF 가드 구성 요소를 닫을 수 있습니다.

요약

CSRF 보호를 끄면 일부 개발 문제가 해결 될 수 있지만 보안 위험도 발생할 수 있습니다. 다른 보안 조치를 취하거나 개발 환경에서 종료하기 위해 문을 닫을 때주의를 기울여야합니다. 필요한 경우 코드를 백업하거나 다른 안전한 솔루션을 선택하십시오.