(작성중) Spring Security란 무엇인가? Spring Security의 필요성, 역할과 전체적인 흐름

박해인·2024년 4월 18일
0

Spring Security

목록 보기
1/3

✅ 스프링 시큐리티란?

Spring Security는 Spring 기반의 애플리케이션의 보안(인증과 권한, 인가 등)을 담당하는 스프링 하위 프레임워크이다.

✅ 시큐리티가 필요한 이유?

웹사이트는 각종 서비스를 하기 위한 리소스와 서비스를 사용하는 유저들의 개인 정보를 가지고 있다. 이들 리소스를 보호하기 위해서 일반적으로 웹사이트는 두가지 보안정책을 설정해야 한다.

✅ Spring Security의 역할?

1. 인증 (Authentication)

해당 사용자가 맞는지를 확인하는 절차이다.
사이트에 접근하는 사람이 누구인지 시스템이 알아야한다.특정 리소스에 접근하거나 개인화된 사용성을 보장 받기 위해서는 반드시 로그인 과정이 필요하다.

  • 기본 로그인 : Session, 토큰 (Sessionless) 관리
  • SNS 로그인 : 소셜로그인 (인증 위임)

2. 인가 혹은 권한 (Authorization)

인증된 사용자가 요청한 자원에 접근 가능한지를 결정하는 절차
사용자가 속한 시스템은 로그인한 사용자가 어떤 작업을 할 수 있는지 권한을 설정한다.
개발자는 권한이 있는 사용자에게만 페이지 엑세스를 허용하게한다.

✅ SpringSecurity의 전체적인 흐름?

단일 HTTP 요청에 대한 일반적인 핸들러 계층의 모습

1. 클라이언트는 어플리케이션에 요청을 보낸다.
2. 컨테이너는 요청 URI 경로를 기반으로
FilterChain과 HttpServletRequest를 처리하는 Servelet을 포함한 FilterChain을 생성한다.
⭐ 보통, 하나의 서블렛은 하나의 HttpServletRequest 와 HttpServletResponse를 다룰 수 있음.

참고🧐
[1] https://mangkyu.tistory.com/76

[2] https://gitlab.com/jongwons.choi/spring-boot-security-lecture/-/blob/master/part0/2%20%EC%8A%A4%ED%94%84%EB%A7%81%20%EC%8B%9C%ED%81%90%EB%A6%AC%ED%8B%B0%EB%9E%80.md?ref_type=heads

[3] https://spring.io/guides/topicals/spring-security-architecture

profile
갓생살고싶어라

0개의 댓글