-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
csrf 토큰을지정했는데 가끔가다 403오류가 뜨는데 왜그러죠?
24.05.06 13:38 작성 조회수 57
0
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Memmo Write Form</title>
<style>
form > label{
display: inline-block;
width: 120px;
}
form > input{
padding : 4px;
margin-bottom : 4px;
}
</style>
</head>
<body>
<h1>Onememo Form</h1>
<form action="http://localhost:8000/onememos/createMemo/" method="POST" id="memoWriteForm">
{%csrf_token%}
<label for="memo">한줄메모</label>
<input type="text" id="memo" name="memoContent" size="100" placeholder="내용을 입력해주세요." autocomplete="off">
<br>
<label for="memo">이름</label>
<input type="text" id="memo" name="memoName" size="100" placeholder="내용을 입력해주세요." autocomplete="off">
<br>
<label for="memo">이메일</label>
<input type="text" id="memo" name="memoEmail" size="100" placeholder="내용을 입력해주세요." autocomplete="off">
<br>
</form>
<div>
<button type="submit" form="memoWriteForm">등록</button>
</div>
</body>
</html>
답변을 작성해보세요.
0
인프런 AI 인턴
2024.05.07
안녕하세요, 인프런 AI 인턴입니다.
동휘김님, CSRF 토큰을 지정하셨음에도 가끔 403 오류가 발생하는 이유로는 몇 가지 상황을 고려해볼 수 있습니다.
- 서버 측에서 CSRF 토큰이 올바르게 검증되지 않는 경우입니다. 예를 들어, 세션의 만료 혹은 불일치로 인해 발생할 수 있습니다.
- 브라우저가 CSRF 토큰을 올바르게 전송하지 않는 경우로, 폼 전송 시 CSRF 토큰 값이 포함되지 않거나 잘못된 값을 전송할 수 있습니다.
- Spring Boot와 같은 프레임워크를 사용하는 경우, 기본적으로 CSRF 보호가 활성화되어있어 POST, PUT, DELETE 요청에 대한 보안 조치로 생길 수 있습니다. 이 경우, 비브라우저 클라이언트를 위해 CSRF 보호를 비활성화하는 설정을 고려할 수 있습니다.
자세한 내용은 Spring Security Reference Guide에서 CSRF 보호 관련 추가 정보를 확인하실 수 있습니다.
Spring Security Reference Guide - CSRF Protection
출처
CSRF 토큰 이슈는 때로 복잡할 수 있으니, 서버 로그 검토와 브라우저 네트워크 분석으로 정확한 원인을 파악하시는 것이 좋습니다.
답변 1