BackEnd/Spring(26)
-
csrf 토큰
CSRF(Cross-Site Request Forgery) 토큰은 CSRF 공격을 방지하기 위한 보안 메커니즘입니다. CSRF 공격은 사용자의 인증 정보를 악용하여 의도하지 않은 요청을 수행하게 만드는 웹 보안 취약점입니다.1. CSRF 공격의 작동 원리CSRF 공격은 사용자가 신뢰하는 웹 애플리케이션에 대해 공격자가 의도한 요청을 강제로 수행하게 만듭니다. 예를 들어:사용자가 은행 웹사이트에 로그인한 상태입니다.공격자가 CSRF 취약점을 이용하여 악성 스크립트나 링크를 사용자의 브라우저에서 실행합니다.사용자의 브라우저는 이미 저장된 쿠키를 자동으로 포함하여 요청을 보냅니다.요청이 합법적으로 보이기 때문에 서버는 이를 처리합니다.결과적으로, 사용자는 자신도 모르게 공격자의 의도에 따라 행동하게 됩니다.2..
2024.12.23 -
@bean
Annotationenvironmentvariables What ?Springsddddddfs
2024.12.23 -
Spring Security
스프링 시큐리티 설치하기스프링 시큐리티를 사용하기 위해 다음과 같이 build.gradle 파일을 수정해 보자.[파일명:build.gradle](... 생략 ...)dependencies { (... 생략 ...) implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6'}(... 생략 ...)스프링 시큐리티와 이와 관련된 타임리프(Thymeleaf) 라이브러리를 사용하도록 설정했다. build.gradle 파일을 선택한 후 마우스 오른쪽 버튼을 눌러 [Gradle → Refresh Gradle ..
2024.12.23 -
Spring Boot Validation
항목설명@Size문자 길이를 제한한다.@NotNullNull을 허용하지 않는다.@NotEmptyNull 또는 빈 문자열("")을 허용하지 않는다.@Past과거 날짜만 입력할 수 있다.@Future미래 날짜만 입력할 수 있다.@FutureOrPresent미래 또는 오늘 날짜만 입력할 수 있다.@Max최댓값 이하의 값만 입력할 수 있도록 제한한다.@Min최솟값 이상의 값만 입력할 수 있도록 제한한다.@Pattern입력값을 정규식 패턴으로 검증한다.
2024.12.18 -
layout
layout:decorate 표준 HTML 구조 살펴보기다음 예로 표준 HTML 문서의 구조를 살펴보자.[표준 HTML 구조의 예](... 생략 ...)곧이어 작성할 템플릿의 일부이다. 여기서는 눈으로만 살펴보자.표준 HTML 문서의 구조는 앞의 예처럼 html, head, body 요소가 있어야 하며, CSS 파일은 layout.html은 모든 템플릿이 상속해야 하는 템플릿으로, 표준 HTML 문서 구조로 정리된 기본 틀이 된다. body 요소 안의 은 layout.html을 상속한 템플릿에서 개별적으로 구현해야 하는 영역이 된다. 즉, layout.html 템플릿을 상속하면 영역만 수정해도 표준 HTML 문서로 작성된다.question_list.html에 템플릿 상속하기question_list.ht..
2024.12.17 -
서비스
여기서 말하는 ‘서비스’와 웹 서비스는 서로 다른 개념임에 주의하자.우리는 그동안 QuestionController에서 QuestionRepository를 직접 접근해 질문 목록 데이터를 조회했다. 하지만 대부분의 규모 있는 스프링 부트(Spring Boot) 프로젝트는 컨트롤러에서 리포지터리를 직접 호출하지 않고 중간에 서비스를 두어 데이터를 처리한다. 이러한 서비스를 사용하여 SBB 프로그램을 개선해 보자.서비스가 필요한 이유서비스란 무엇일까? 서비스(service)는 간단히 말해 스프링에서 데이터 처리를 위해 작성하는 클래스이다. 우리는 그동안 서비스 없이도 웹 프로그램을 동작시키는 데 문제가 없었다. 그런데 굳이 서비스를 사용해야 할까? 서비스가 필요한 이유를 좀 더 자세히 알아보자.복잡한 코드를..
2024.12.16