목차 Authentication 인증이란 사용자가 식별정보(Cridential)를 이용해 본인이 맞음을 증명하는 절차이다. 스프링 시큐리티 내부에서는 이를 위해 제법 길고 촘촘한 과정이 이어지는데, 요약에 도전해보자. 당연하게도 사용자가 크리덴셜을 담아 보낸 요청이 필터에 도달하면서 과정이 시작된다. UsernamePasswordAuthenticationFilter 제출된 크리덴셜을 통한 인증을 처리하는 필터이다. 가장 앞에서 크리덴셜만 담은, 인증이 완료되지 않은 토큰을 생성(UsernamePasswordAuthenticationToken) 후 AuthenticationManager 호출. AuthenticationManager 인증을 총괄하는 관리자 인터페이스. 실질적인 인증관리는 해당 클래스를 구현..
목차 Spring Security Spring Security는 인증, 권한 부여 및 보안 기능을 제공하는 스프링 프레임워크이다. 먼저 사용되는 용어를 간단히 정리하자. User, Principal 인증을 시도하는 주체를 User, 주체의 구체적인 정보(Username ID)를 Principal이라고 한다. 실제로는 혼용돼서 사용되는 듯하며, 보통 Entity 클래스에 그 정보가 담긴다. Authentication 인증은 User, 혹은 Principal이 본인이 맞음을 증명하는 절차를 말한다. 정상적인 인증을 위해 제출하는 식별 정보를 Credential(신원 증명 정보)이라고 한다. Authorization 권한 부여, 혹은 인가는 인증을 통과한 사용자에게 역할(Role)에 따라 특정 리소스에 대한 ..
스프링 시큐리티는 2003년 발표된 인증(Authentication), 권한 부여(Authorization) 및 보안 프레임워크이다. 2022년 현재 버전 5까지 나와있으며, 스프링을 기반으로 한 엔터프라이즈 앱 보안의 사실상 표준이다. 버전 3 기준으로 대략 아래와 같은 모듈 구조를 가지고 있으며, 스프링 시큐리티를 사용하면 즉시 다음과 같은 작업을 지원하기 때문에 다양한 유형(폼 로그인, 토큰 기반, OAuth 2 기반)의 인증 사용자의 역할에 따른 권한 레벨 및 리소스에 대한 접근 제어 TLS 적용 및 민감한 정보 암호화 알려진 보안 공격 차단 다양한 커스터마이징 및 유연한 확장 개발자가 직접 보안 기능을 구현할 수 있음에도 스프링 시큐리티를 사용하는 것이 안전한 선택이 된다. 진도를 더 나가기 전..
- Total
- Today
- Yesterday
- Backjoon
- 백준
- 야경
- 스트림
- 세계일주
- 세모
- 맛집
- 남미
- 면접 준비
- 파이썬
- 여행
- spring
- 알고리즘
- BOJ
- RX100M5
- 칼이사
- java
- Algorithm
- a6000
- Python
- 리스트
- 스프링
- 동적계획법
- 중남미
- 유럽여행
- 세계여행
- 지지
- 자바
- 기술면접
- 유럽
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |