본문 바로가기
SpringSecurity

1. Spring Security란?

by Developer_TaeJong 2025. 6. 13.

🔐 Spring Security의 정의

Spring Security는 "Spring 기반 애플리케이션의 인증(Authentication)과 인가(Authorization)"를 담당하는 강력하고 유연한 보안 프레임워크입니다.

  • 로그인/로그아웃 처리, 권한별 접근 제어, 세션 관리, CSRF 보호 등 다양한 보안 기능 제공
  • 보안 로직을 필터 체인 기반으로 처리하여 확장성과 유연성이 뛰어남
  • 직접 로그인/회원가입 로직을 구현하지 않아도 기본 인증 처리 가능
  • CSRF, 세션 고정, 브루트포스 방지 등 보안 기능 내장
  • OAuth2 소셜 로그인, JWT 인증, 메일/전화 인증 등 확장 가능

🎯 왜 Spring Security를 사용하는가?

기존 방식 Spring Security 사용 시
인증, 인가를 직접 구현해야 함 자동 인증 처리 (Form, Basic, OAuth 등)
비밀번호 평문 저장 위험 BCrypt 등의 암호화 전략 제공
접근 제어 로직이 분산됨 설정 파일로 URL 권한 제어 일괄 처리
보안 이슈 대응이 어려움 최신 보안 트렌드 반영, 커뮤니티 강력함

🧱 기본 구조 흐름

사용자가 HTTP 요청을 보내면 Spring Security가 먼저 요청을 가로채서 필터체인을 통해 인증/인가 여부를 판단합니다.
인증이 성공하면 실제 컨트롤러(비즈니스 로직)로 요청이 넘어갑니다.

 

📌 아래는 구조 다이어그램입니다:


※ 위 구조는 Thymeleaf + Spring Boot + JPA + Security로 구성된 예시입니다.


✅ 마무리

Spring Security는 복잡하고 다양한 보안 처리를 매우 강력하고 유연하게 제공하는 프레임워크입니다.  
기본 개념과 동작 흐름을 이해했다면, 이제 실제 프로젝트에 어떻게 적용하는지를 살펴보겠습니다.

👉 다음 글에서는 "Spring Boot 프로젝트에 Spring Security를 설정하는 방법과 사용한 기술 스택" 에 대해 소개합니다.