Spring Legacy Security 설정법-1

김두현·2023년 3월 14일
1

SpringSecurity

목록 보기
1/3
post-thumbnail

Spring Security란?

Spring Security는 Spring 기반의 웹 어플리케이션 보안 프레임워크입니다.
Spring Security는 인증, 권한 부여 및 기타 보안기능을 제공하는 프레임워크입니다.

Spring Security의 주요 기능

- 인증(Authentication) :

  • 사용자가 누구인지 확인하는 과정입니다. Spring Security는 다양한 인증 방식을 지원합니다. 예를 들어, 폼 로그인, 기본 인증, OAuth2, LDAP 등이 있습니다.

- 권한 부여(Authorization) :

  • 인증된 사용자가 특정 자원에 접근할 수 있는지 확인하는 과정입니다. Spring Security는 다양한 권한 부여 방식을 지원합니다. 예를 들어, URL 기반 권한 부여, 메소드 기반 권한 부여 등이 있습니다.

- 보안 헤더(Security Header) :

  • Spring Security는 보안 헤더를 자동으로 추가하여 웹 어플리케이션의 보안을 높입니다. 예를 들어, X-Content-Type-Options, X-XSS-Protection, X-Frame-Options 등이 있습니다.

- CSRF 공격 방어 :

  • Spring Security는 CSRF(Cross-site request forgery) 공격을 방어하기 위한 기능을 제공합니다. 예를 들어, CSRF 토큰을 사용하는 방어 기능이 있습니다.

- 세션 관리(Session Management) :

  • Spring Security는 세션 관리를 위한 기능을 제공합니다. 예를 들어, 세션 타임아웃, 세션 고정 보호 등이 있습니다.

Spring Security의 구성 요소

Spring Security는 아래와 같은 구성 요소로 구성됩니다.

  • Security Filter : Spring Security의 가장 핵심적인 구성 요소입니다. Security Filter는 웹 어플리케이션으로 들어오는 모든 요청에 대해 인증 및 권한 부여를 처리합니다.
  • Authentication Manager : Security Filter가 인증을 처리할 때 사용하는 인증 매니저입니다. 인증 매니저는 인증 제공자(Authentication Provider)를 사용하여 사용자를 인증합니다.
  • Authorization Manager : Security Filter가 권한 부여를 처리할 때 사용하는 권한 부여 매니저입니다. 권한 부여 매니저는 접근 결정자(Access Decision Manager)를 사용하여 사용자에게 권한을 부여합니다.
  • UserDetailsService : 인증 매니저가 인증 제공자를 사용하여 사용자를 인증할 때 사용하는 사용자 정보 서비스입니다. UserDetailsService는 사용자 정보를 데이터베이스, LDAP, 인-메모리 등에서 가져올 수 있습니다.
profile
기억코딩 - 코딩을 대신 기억해드림

0개의 댓글