2023/10/02 2

[Spring Security] 3-3. Authentication: Password Storage

1. PasswordEncoder비밀번호 암호화를 담당하는 객체 one-way hashing한 번 해싱하면 원래 입력값으로 되돌릴 수 없음 (복호화 불가)항목설명목적비밀번호를 안전하게 저장하기 위함인증 방식입력된 비밀번호를 해싱하여, DB에 저장된 해시값과 비교장점원문 비밀번호를 저장하지 않으므로 데이터 유출 시 위험 최소화 2. Password Storage History구분설명문제점 / 대응초기 보안 처리비밀번호를 평문으로 저장DB 접근 제어 기능에 의존계정 정보 탈취 위험- SQL Injection: 입력값 공격단방향 해싱 도입단방향 해시 함수 사용 (해시값은 복호화 불가능)→ 입력 비밀번호를 해시하여 저장된 값과 비교사전 공격 가능성 존재- 레인보우 테이블: 다양한 해시값을 미리 계산해둔 테이블S..

[Spring Security] 3-2. Authentication: Username/Password

1. 인증 정보 습득방식Spring Security는 기본적으로 클라이언트로부터 인증 정보를 얻기 위한 세가지 방법을 지원합니다. 기본적으로 HttpServletRequest 객체로부터 아이디/패스워드 정보를 얻습니다. 종류구분FormBasicDigest설명HTML 폼을 통해 아이디/비밀번호를 입력받아 인증HTTP 요청 헤더에 Base64로 인코딩된 아이디/비밀번호를 포함nonce 기반 해시값으로 인증 (비밀번호는 평문 전송 안 함)요청 방식POST /login (form-data)Authorization: Basic base64(username:password)Authorization: Digest ...초기 트리거인증 없이 보호된 리소스 접근→ /login 리다이렉트인증 없이 접근 시 → WWW-Au..