spring security 3

Spring Security - JWT

이번에는 지난번 세션 인증을 적용한 포스트에 이어서 JWT를 이용한 로그인을 구현해보도록 하겠다. 지난 포스트 https://hou27.tistory.com/entry/Spring-Security-%EC%84%B8%EC%85%98-%EC%9D%B8%EC%A6%9D Spring Security - 세션 인증 지난번에 Spring Security를 적용했었는데, Spring Security 적용하기 [Spring Boot] Spring Security 적용하기 - 암호화 프로젝트를 진행하면서 사용자 시스템을 구축한다면 필연적으로 인증 로직도 구현해야한 hou27.tistory.com 이번 포스트는 https://github.com/murraco/spring-boot-jwt GitHub - murraco/sp..

Backend/Spring 2022.06.11

Spring Security - 세션 인증

지난번에 Spring Security를 적용했었는데, Spring Security 적용하기 [Spring Boot] Spring Security 적용하기 - 암호화 프로젝트를 진행하면서 사용자 시스템을 구축한다면 필연적으로 인증 로직도 구현해야한다. 이 과정에서 만약 사용자의 비밀번호를 평문(Plain Text)으로 저장한다면, 심각한 보안상 문제를 초래 hou27.tistory.com 이번엔 이어서 세션을 기반으로 한 로그인을 구현해보도록 하겠다. 가장 먼저 스프링 시큐리티의 설정을 마무리하고, 타임리프를 통해 간단한 페이지를 구현하여 테스트까지 해볼 예정이다. 우선 변경된 Spring Security 설정 파일의 모습이다. 참고로 이 포스트에서 다루는 Spring Security의 버전은 5.7.1...

Backend/Spring 2022.05.29

[Spring Boot] Spring Security 적용하기 - 암호화

프로젝트를 진행하면서 사용자 시스템을 구축한다면 필연적으로 인증 로직도 구현해야한다. 이 과정에서 만약 사용자의 비밀번호를 평문(Plain Text)으로 저장한다면, 심각한 보안상 문제를 초래하게 된다. 그렇기 때문에 반드시 암호화하여 관리해야만 한다. 암호화? 해싱? 해싱과 암호화 두 단어가 이런 류의 포스트에서 마구 등장해 헷갈릴 수 있다. 해싱(Hashing)과 암호화(Encryption) 모두 데이터의 보안을 위해 사용하는 것이지만, 가장 큰 차이점은 Hash는 단방향 암호화 기법이고 Encryption는 양방향 암호화 기법이라는 것이다. 때문에 비밀번호를 저장할 때는 행여나 탈취될 가능성을 염두에 두어 평문을 암호화하는 것은 가능하지만 다시 평문으로 복호화하는 것은 불가능한 단방향 암호화 방식을..

Backend/Spring 2022.05.20