Spring Boot/Security
![[Spring Security] 필터 체인](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7Tk1z%2FbtrMJj6HZ07%2FyDMbT8KQ7ub4XCK2bQT8Dk%2Fimg.png)
[Spring Security] 필터 체인
보안이 적용된 웹 요청의 일반적인 처리 흐름 (1)에서 사용자가 보호된 리소스를 요청합니다. (2)에서 인증 관리자 역할을 하는 컴포넌트가 사용자의 크리덴셜(Credential)을 요청합니다. 사용자의 크리덴셜(Credential)이란 해당 사용자를 증명하기 위한 구체적인 수단을 의미합니다. 일반적으로는 사용자의 패스워드가 크리덴셜에 해당합니다. (3)에서 사용자는 인증 관리자에게 크리덴셜(Credential)을 제공합니다. (4)에서 인증 관리자는 크리덴셜 저장소에서 사용자의 크리덴셜을 조회합니다. (5)에서 인증 관리자는 사용자가 제공한 크리덴셜과 크리덴셜 저장소에 저장된 크리덴셜을 비교해 검증 작업을 수행합니다. (6) 유효한 크리덴셜이 아니라면 Exception을 throw합니다. (7) 유효한 ..
[Spring Security] HTTPS, Hashing, Cookie, Session, SQL Injection
HTTPS란? HTTPS는 Hyper Text Transfer Protocol Secure Socket layer의 약자이다. HTTP over SSL(TLS), HTTP over Secure라고 부르기도 한다. HTTPS는 HTTP 요청을 SSL 혹은 TLS라는 알고리즘을 이용해 HTTP 통신을 하는 과정에서 데이터를 암호화하여 전송하는 방법이다. HTTP HTTP TCP IP 네트워크 인터페이스 HTTPS HTTP SSL or TLS TCP IP 네트워크 인터페이스 암호화 제 3자가 서버와 클라이언트가 주고받는 정보를 탈취할 수 없도록 하는 것이다. 이를 위해 서버와 클라이언트는 서로가 합의한 방법으로 데이터를 암호화하여 주고받는다. 따라서 중간에 제 3자에게 데이터가 탈취되더라도 그 내용을 알아볼 ..