2017-11-10 3 views
0

안녕하세요.베어 메커 토큰과 같은 Httponly 쿠키 - Laravel Passport

누군가 나를 도울 수 있기를 바랬습니다. OAuth를 사용하여 나를 위해 처음으로 나와 함께있어주세요.

저는 React JS와 Laravel 5.5를 사용하여 응용 프로그램을 작성하기 시작했습니다. Laravel Passport를 설치하고 React JS 앱에서 내 사용자를 로그 아웃하는 데 성공했습니다.하지만 보안을 위해 httponly 쿠키를 사용하는 방법을 살펴 보았습니다.

내 작업 코드에서 나는 단순히 localStorage에 액세스 토큰을 저장하고 액시스 헤더에 Authorization': 'Bearer ' + token을 사용하여 API를 보냈습니다. 완벽하게 작동합니다. 그러나 httponly를 사용하여 쿠키를 설정하면 그 값을 가져올 수 없습니다. (정확한 포인트라고 가정합니다!) - 반응 쿠키 (npm에서)를 사용하면 콘솔에 cookie.loadAll()을 기록한 다음 유일한 쿠키가됩니다. 새로운 XSRF-TOKEN 쿠키가 표시되지만 내가 설정 한 accessToken 쿠키가 아닙니다. 그렇다면이 토큰을 API로 보내려면 어떻게해야합니까?

는 지원 :

답변

0

당신이 JS에서 Http 만 쿠키를 읽을 수 없기 때문에 백엔드에서 새 토큰을 가져올 때, 백엔드는 응답 본문에 토큰을 전송해야 미리 감사드립니다.

0

베어러 토큰으로 Httponly 쿠키가 많은 의미가 없습니다. 쿠키를 httponly 사용하면 자바 스크립트로 읽을 수없는 XSS 공격으로부터 사용자와 사용자를 보호 할 수 있습니다. 그들은 예를 들면 다음과 같이 사용될 수있다. 세션 정보를 저장하기위한 것으로, 예를 들어 사용자가 할 때 전송된다. 페이지 새로 고침.

승인 헤더를 'Bearer ' + token으로 설정하는 것은 토큰을 API로 보낸 올바른 방법입니다. api 서버에서 토큰을 사용하기 전에 항상 토큰이 유효한지 확인해야합니다.