security 3

Spring Security와 jwt를 이용하여 회원 기능 구현하기

Security와 jwt를 이용하여 회원 기능을 구현하는 과정을 알아보자.  JWT 관련1) TokenProvider : 유저 정보로 JWT 토큰을 만들거나 토큰을 바탕으로 유저 정보를 가져온다.2) JwtFilter : Spring Request 앞단에 붙일 Custom FilterSpring Security 관련1) JwtSecurityConfig : JwtFilter를 추가한다.2) JwtAccessDeniedHandler : 접근 권한이 없을 때 403 에러를 발생시킨다.3) JwtAuthenticationEntryPoint : 인증 정보가 없을 때 401 에러를 발생시킨다.4) SecurityConfig : 스프링 시큐리티에 필요한 설정5) SecurityUtil : SecurityContext..

jwt 토큰 개념

spring security와 jwt를 이용하여 로그인, 로그아웃을 구현하기 위해 jwt에 대해 학습한 것을 정리한 내용이다.   jwt란?Json Web Token으로, 인증에 필요한 정보들을 토큰에 담아 암호화하여, 인증에 사용하는 인터넷 표준 인증 방식이다. jwt는 header, payload, signature로 구성되어 있다.header는 서명에 사용된 알고리즘과 토큰의 타입을, payload에는 사용자나 토큰에 대한 정보를, signature은 헤더와 페이로드를 비밀키로 암호화한 내용이 담겨있다. 사용할 수 있는 상황은 로그인, 정보 교류 등이 있다.로그인을 할 떄는 서버가 유저의 정보에 기반한 토큰을 발급하여 유저에게 전달해주고, 유저가 서버에 요청을 할 때마다 jwt를 포함하여 전달한다...

Spring Security 개념

Spring Security에 대해 학습한 내용이다. 맨날 대충 코드 써먹기만 해서 제대로 이해해보려고 한다!  Spring Security는 Spring 기반의 애플리케이션의 보안을 담당하는 스프링 하위 프레임워크이다. 인증과 인가와 같은 보안을 처리하는데 사용한다. 인증은 해당 사용자가 본인이 맞는지를 확인하는 절차이고, 인가는 인증된 사용자가 요청한 자원에 접근 가능한지를 결정하는 절차이다. Spring Security에서는 Principal을 아이디로, Credential을 비밀번호로 사용하는 Credential 기반의 인증 방식을 사용한다.* Principal은 접근 주체로, 보호받는 Resource에 접근하는 대상이다. Credential은 비밀번호로 Resource에 접근하는 대상의 비밀번호..