SpringSecurity
-
✅ 스프링 시큐리티란? 스프링 기반 애플리케이션의 인증과 인가를 담당하는 스프링 하위 프레임워크 🔹 인증 : 로그인, 회원가입 🔹 인가 : 인증된 사용자의 권한에 따라 접근 허락 ✅ 스프링 시큐리티 인증 구조 1️⃣ 유저가 로그인을 요청하면 AuthenticationFilter에서 요청을 가로챔 2️⃣ HTTPServletRequest에서 사용자가 보낸 아이디, 비번의 유효성을 검사하고, AuthenticationFilter가 사용자 정보로 임시 인증용 객체(UsernamePasswordAuthentication Token)를 만듦 3️⃣ AuthenticationFilter가 임시 인증용 객체를 AuthenticationManager에 전달 4️⃣ AuthenticationManager가 전달받은 임시..
[Spring Security]스프링 시큐리티란? 스프링 시큐리티 개념, 구조, 흐름✅ 스프링 시큐리티란? 스프링 기반 애플리케이션의 인증과 인가를 담당하는 스프링 하위 프레임워크 🔹 인증 : 로그인, 회원가입 🔹 인가 : 인증된 사용자의 권한에 따라 접근 허락 ✅ 스프링 시큐리티 인증 구조 1️⃣ 유저가 로그인을 요청하면 AuthenticationFilter에서 요청을 가로챔 2️⃣ HTTPServletRequest에서 사용자가 보낸 아이디, 비번의 유효성을 검사하고, AuthenticationFilter가 사용자 정보로 임시 인증용 객체(UsernamePasswordAuthentication Token)를 만듦 3️⃣ AuthenticationFilter가 임시 인증용 객체를 AuthenticationManager에 전달 4️⃣ AuthenticationManager가 전달받은 임시..
2024.02.02 -
전자정부 표준프레임워크(v3.10.0)로 진행했고, 시큐리티 관련 설정은 이 글 참고 https://hyewonkim1996.tistory.com/19 [eGov]전자정부 프레임워크(v3.10.0)와 Spring Security(스프링 시큐리티) 연동 전자정부 스프링 시큐리티 연동 1.pom.xml에서 스프링 시큐리티 라이브러리 설정(호환되는 버전인지 확인 필수) 이 글에서는 v3.10.0 기준 호환되는 스프링 시큐리티 버전 4.2.13.릴리즈로 설정했다. hyewonkim1996.tistory.com 시큐리티로 로그인 구현 실습하기에 앞서, 시큐리티는 구조와 흐름을 꼭 알아야 하니 모른다면 이 글을 참고하고 오자. https://hyewonkim1996.tistory.com/23 [Spring Secu..
[Spring Security]로그인 커스터마이징(왕초보)(2) - 로그인, 로그아웃 기능 구현전자정부 표준프레임워크(v3.10.0)로 진행했고, 시큐리티 관련 설정은 이 글 참고 https://hyewonkim1996.tistory.com/19 [eGov]전자정부 프레임워크(v3.10.0)와 Spring Security(스프링 시큐리티) 연동 전자정부 스프링 시큐리티 연동 1.pom.xml에서 스프링 시큐리티 라이브러리 설정(호환되는 버전인지 확인 필수) 이 글에서는 v3.10.0 기준 호환되는 스프링 시큐리티 버전 4.2.13.릴리즈로 설정했다. hyewonkim1996.tistory.com 시큐리티로 로그인 구현 실습하기에 앞서, 시큐리티는 구조와 흐름을 꼭 알아야 하니 모른다면 이 글을 참고하고 오자. https://hyewonkim1996.tistory.com/23 [Spring Secu..
2024.02.01 -
전자정부 표준프레임워크(v3.10.0)로 진행했고, 시큐리티 관련 설정은 이 글 참고 https://hyewonkim1996.tistory.com/19 [eGov]전자정부 프레임워크(v3.10.0)와 Spring Security(스프링 시큐리티) 연동 전자정부 스프링 시큐리티 연동 1.pom.xml에서 스프링 시큐리티 라이브러리 설정(호환되는 버전인지 확인 필수) 이 글에서는 v3.10.0 기준 호환되는 스프링 시큐리티 버전 4.2.13.릴리즈로 설정했다. hyewonkim1996.tistory.com 시큐리티로 로그인 구현 실습하기에 앞서, 시큐리티는 구조와 흐름을 꼭 알아야 하니 모른다면 이 글을 참고하고 오자. https://hyewonkim1996.tistory.com/23 [Spring Secu..
[Spring Security]로그인 커스터마이징(왕초보)(1) - context-security 뜯어보기, 비밀번호 암호화(BCrypt)전자정부 표준프레임워크(v3.10.0)로 진행했고, 시큐리티 관련 설정은 이 글 참고 https://hyewonkim1996.tistory.com/19 [eGov]전자정부 프레임워크(v3.10.0)와 Spring Security(스프링 시큐리티) 연동 전자정부 스프링 시큐리티 연동 1.pom.xml에서 스프링 시큐리티 라이브러리 설정(호환되는 버전인지 확인 필수) 이 글에서는 v3.10.0 기준 호환되는 스프링 시큐리티 버전 4.2.13.릴리즈로 설정했다. hyewonkim1996.tistory.com 시큐리티로 로그인 구현 실습하기에 앞서, 시큐리티는 구조와 흐름을 꼭 알아야 하니 모른다면 이 글을 참고하고 오자. https://hyewonkim1996.tistory.com/23 [Spring Secu..
2024.02.01 -
전자정부 스프링 시큐리티 연동 1.pom.xml에서 스프링 시큐리티 라이브러리 설정(호환되는 버전인지 확인 필수) 이 글에서는 v3.10.0 기준 호환되는 스프링 시큐리티 버전 4.2.13.릴리즈로 설정했다. 먼저 properties 태그에 시큐리티 버전을 명시해 준다. 4.2.13.RELEASE 다음으로 dependency를 설정한다. org.springframework.security spring-security-core ${security.version} org.springframework.security spring-security-web ${security.version} org.springframework.security spring-security-config ${security.versio..
[eGov]전자정부 프레임워크(v3.10.0)와 Spring Security(스프링 시큐리티) 연동전자정부 스프링 시큐리티 연동 1.pom.xml에서 스프링 시큐리티 라이브러리 설정(호환되는 버전인지 확인 필수) 이 글에서는 v3.10.0 기준 호환되는 스프링 시큐리티 버전 4.2.13.릴리즈로 설정했다. 먼저 properties 태그에 시큐리티 버전을 명시해 준다. 4.2.13.RELEASE 다음으로 dependency를 설정한다. org.springframework.security spring-security-core ${security.version} org.springframework.security spring-security-web ${security.version} org.springframework.security spring-security-config ${security.versio..
2024.02.01 -
DB에 있는 아이디와 비밀번호를 로그인 폼에 맞게 입력했는데도 계속 bad credentials 오류로 login fail이 떴다. 다음과 같은 원인이 있을 때 발생했다. 1.설정 파일에서 무언가 잘못됨 =>web.xml에서 이 중복 설정되어 있었다. 2.login-processing-url의 login에 매핑되는 컨트롤러 value가 있다 =>login-processing-url이 login으로 되어있는데 컨트롤러 value가 login인 부분이 있어서 스프링 시큐리티 자체의 로그인 인증 절차가 실행되는 게 아닌 해당 컨트롤러 value로 넘어갔었다. 3.비밀번호 삽입 때 사용한 인코더와 비밀번호 검증 시 사용한 인코더가 다를 때 =>예를 들어 삽입 때는 BCrypt를 사용했는데 검증 때는 다른 인코더..
[Spring Security]비밀번호 맞게 입력했는데 계속 bad credentials 오류 발생DB에 있는 아이디와 비밀번호를 로그인 폼에 맞게 입력했는데도 계속 bad credentials 오류로 login fail이 떴다. 다음과 같은 원인이 있을 때 발생했다. 1.설정 파일에서 무언가 잘못됨 =>web.xml에서 이 중복 설정되어 있었다. 2.login-processing-url의 login에 매핑되는 컨트롤러 value가 있다 =>login-processing-url이 login으로 되어있는데 컨트롤러 value가 login인 부분이 있어서 스프링 시큐리티 자체의 로그인 인증 절차가 실행되는 게 아닌 해당 컨트롤러 value로 넘어갔었다. 3.비밀번호 삽입 때 사용한 인코더와 비밀번호 검증 시 사용한 인코더가 다를 때 =>예를 들어 삽입 때는 BCrypt를 사용했는데 검증 때는 다른 인코더..
2024.01.28