본문 바로가기

개발중

(617)
[JWT🔒] 스프링 시큐리티의 구조 스프링 시큐리티는 주로 서블릿 필터와 이들로 구성된 필터체인을 사용하고 있습니다. 실제 로그인 시에 스프링 시큐리티의 동작 플로우를 바탕으로 인증과 관련된 스프링 시큐리티의 아키텍쳐를 알아 보도록 하겠습니다. 사용자가 로그인 정보와 함께 인증 요청(Http Request) AuthenticationFilter가 이 요청을 가로챕니다. 이 때 가로챈 정보를 통해 UsernamePasswordAuthenticationToken이라는 인증용 객체를 생성합니다. AuthenticationManager의 구현체인 ProviderManager에게 UsernamePasswordAuthenticationToken 객체를 전달합니다. 다시 AuthenticationProvider에 UsernamePasswordAuthe..
[JWT🔒] 인증(Authentication)과 권한(Authorization) 먼저 스프링 시큐리티에서 애플리케이션 보안을 구성하는 두 가지 영역으로 나뉘어 있습니다. 이 두 영역은 사실상 스프링 시큐리티의 핵심이라고 볼 수 있습니다. 인증(Authentication) 인증(Authentication)은 보호된 리소스에 접근하는 대상, 즉 사용자에게 적절한 접근 권한이 있는지 확인하는 일련의 과정을 의미합니다. 이 때 보호된 리소스에 접근하는 대상(사용자)을 접근 주체(Principal)이라고 합니다. 권한(Authorization) 권한(Authorization)은 인증절차가 끝난 접근 주체가 보호된 리소스에 접근 가능한지를 결정하는 것을 의미합니다. 이 때 권한을 부여하는 작업을 인가(Authorize)라고 합니다. 쉽게 말하면 인증은 아이디와 비밀번호를 입력 받아 로그인 하는..
✨ STS 설치 가이드 ✨ STS 공식 페이지로 이동해주세요. 저는 4.14.0 - WINDOWS X86_64 를 다운로드 받았습니다. 버전에 맞는 옵션을 선택해주세요. 하단에 다운로드가 진행됩니다. 압축을 원하는 곳에 풀어주세요. 그럼 아래와 같이 나타날꺼에요. contents.zip 을 원하는 곳에 풀어주시면 됩니다. contents.zip 압축을 풀면 sts-4.14.0.RELEASE 이라는 폴더가 생성이 되는데 sts-4.14.0.RELEASE 안에 SpringToolSuite4.exe 가 생성이 됩니다. 그럼 다운로드가 완료된 것입니다. 예전에는 이클립스를 기동시키기 위해서 java도 설치하고 그 설치 경로를 eclispe.ini 파일에 매핑을 시켜주는 등의 과정이 필요했는데 STS에서는 plugin에 jre가 들어있어서..
http 정보 console 에서 요청 확인하는 설정 logging.level.org.apache.coyote.http11=debug application.properties 에 아래 설정 추가시 logging.level.org.apache.coyote.http11=debug 요청 했을 경우에 아래와 같은 정보들이 나온다. Host: localhost:8080 Connection: keep-alive sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="99", "Google Chrome";v="99" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "Windows" Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko..
@ServletComponentScan 서블릿을 자동 등록해주는 어노테이션 import org.springframework.boot.web.servlet.ServletComponentScan; @ServletComponentScan
[인텔리제이 해결]Unexpected exception during bean creation; nested exception is java.lang.NoClassDefFoundError: javax/servlet/annotation/WebServlet 파일 -> 설정 빌드 방식을 Gradle 로 변경해야 한다. 이건 유료만 지원한다고 한다 ;; #자본주의 #휴 #돈많이벌어야하는이유
spring boot Process finished with exit code 0 해결 spring boot Process finished with exit code 0 라고 뜨며 어플리케이션이 바로 종료 되어버릴 때 Gradle 프로젝트 build.gradle implementation 'org.springframework.boot:spring-boot-starter-web' Maven 프로젝트 pom.xml org.springframework.boot spring-boot-starter-web
Scala Subquery 와 Left Outer Join 의 성능차이 오늘 쿼리를 짜다가 의문이 들어서 포스팅을 하려고 한다. Scala Subquery 와 Left Outer Join 의 성능 차이가 있을까 ?? 😦 Scala Subquery 는 내가 주로 사용하는 조인 방식이다. SELECT A.SEQ , A.NAME , ( SELECT B.CODE_NAME FROM CODEB WHERE A.CODE_SEQ = B.CODE_SEQ ) FROM USER A Left Outer Join 방식은 다른 사람들 코드에서 흔히 볼 수 있는 조인 방식이다. SELECT A.SEQ , A.NAME , B.CODE_NAME FROM USER A LEFT OUTER JOIN CODE B ON A.CODE_SEQ = B.CODE_SEQ 오늘 쿼리를 짜다가 안 풀리는 부분이 있어서 대리님께..