Project - Gradle - GroovyLanguage - Java 11Spring Boot Ver - 2.7.11DependenciesDEVELOPER TOOLS - Spring Boot DevToolsDEVELOPER TOOLS - Lombokjava-jwt'
JSON Web Token(JWT)은 웹 표준으로 정의된 JSON 기반의 토큰입니다. JWT는 인증이나 권한 부여에 사용되며, 토큰 자체가 필요한 모든 정보를 포함합니다. 토큰은 서명되어 있어 변조가 불가능하며, 서명을 통해 유효성 검증이 가능합니다. JWT는 세
RFC는 "Request for Comments"의 약자로, 인터넷 프로토콜이나 기술에 대한 개발 및 표준화를 위한 문서입니다. 이 문서들은 인터넷 엔지니어들이 서로 의견을 교환하고 개발을 위한 기초 자료로 사용되며, 인터넷의 발전과 함께 꾸준히 작성되고 있습니다. 많
RSA는 암호화와 서명에 사용되는 공개키 암호화 알고리즘입니다. RSA는 Rivest, Shamir, Adleman의 이름에서 따온 것입니다. RSA에서는 공개키와 개인키 두 개의 키를 사용합니다. 공개키는 누구나 사용할 수 있지만, 개인키는 해당 키를 가진 사용자
란, 컴퓨터 네트워크 보안의 기본 원칙으로 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)을 나타냅니다.기밀성은 정보가 누설되지 않도록 보호하는 것을 의미합니다. 즉, 오직 인가된 사람들만 정보에 접근하도록 하고, 정
OSI 7계층은 컴퓨터 네트워크에서 데이터 통신을 할 때 사용되는 프로토콜을 7개의 계층으로 분리하여 표준화한 모델입니다. 이 모델은 다양한 네트워크 기술을 분류하고, 각 계층에서 처리하는 기능을 정의하여 효율적인 데이터 통신을 가능케 합니다.아래는 7개의 계층과 간단
클라이언트가 서버측에 JavaScript로 Ajax 요청을 보내면, 보통 브라우저에서는 서버로부터 받은 쿠키를 사용하여 세션 ID를 저장합니다. 그리고 브라우저는 이 세션 ID를 다음 요청에서 서버로 전달합니다. 하지만 이 방식은 다음과 같은 단점이 있습니다.쿠키 사용
session의 단점 위 그림은 session에 요청하고 응답하는 과정을 간단히 표현한 그림입니다. 여러 개의 서버를 사용하는 경우, 서버들이 세션을 공유할 수 없습니다. 즉, 사용자의 요청이 다른 서버로 전달되면 해당 서버는 그 전 서버와 공유하지 않는 별도의
JWT에서 Filter는 인증 및 인가를 처리하는 역할을 합니다. 일반적으로 Spring Security와 연동되어 사용되며, 인증 및 인가를 처리하기 전에 Filter가 요청을 가로채고 필요한 처리를 수행한 후 다음 단계로 요청을 전달합니다. JWT에서 Filter는
Filter1 HttpServletRequest의 getHeader() 메소드는 요청에 특정 헤더가 없는 경우 null을 반환합니다. 따라서 Authorization 헤더가 없는 요청에서는 null이 출력될 수 있습니다. ![](https://velog.velcdn
패키지 구조 PrincipalDetails getAuthorities() 메소드는 해당 유저 객체가 가지고 있는 권한 정보를 Spring Security가 이해할 수 있는 형태로 반환하는 역할을 합니다. 위 코드에서는 user.getRoleList()를 통해 해당
로그인을 학습하기 전 회원가입 로직을 간단하게 만들었습니다.먼저, 회원가입시 입력한 비밀번호를 암호화 하기위해 BCryptPasswordEncoder 를 추가해줍니다.회원정보를 DB에 저장하기위해 UserRepository를 @Autowired 하고,비밀번호를 DB에
사용자가 로그인시도를 할 때 요청 본문의 데이터를 한 줄씩 읽어 출력해 봤습니다.각 다른식으로 출력되는 것을 확인할 수 있었습니다.클라이언트로부터 전송된 데이터를 적절하게 처리하고 분석하기 위해 파싱을 사용해 인증을 수행해야합니다.파싱을 사용하는 이유는 클라이언트로부터
사용자 인증이 성공적으로 완료된 후 실행되는 successfulAuthentication 메서드입니다. 이 메서드의 주요 목적은 인증된 사용자에게 JWT 토큰을 생성하고 응답과 함께 전달하는 것입니다. 코드 설명은 다음과 같이 진행할 수 있습니다.successfulAu
클라이언트가 로그인 요청을하고 인증단계에 들어갑니다.인증이 완료가되면 successfulAuthentication 메서드가 실행되며 토큰을 만들어 클라이언트에게 응답합니다. (응답 Header의 Authentication 객체 안에는 토큰이 들어있습니다.)postm