본문 바로가기

전체 글

(285)
240528_TIL 오늘한일스프링부트 복습OAuth2로 로그인/로그아웃 구현하기https://charche.tistory.com/305
OAuth2 로 로그인/로그아웃 구현하기 OAuth란?OAuth는 제3의 서비스에 계정 관리를 맡기는 방식이다. 네이버로 로그인하기, 구글로 로그인하기 같은 방법이다.  리소스 오너: 자신의 정보를 사용하도록 인증 서버에 허가하는 주체이다.리소스 서버 : 리소스 오너의 정보를 가지며, 리소스 오너의 정보를 보호하는 주체를 의미한다. 네이버, 구글, 페이스북이 리소스 서버에 해당한다.인증 서버 : 클라이언트에게 리소스 오너의 정보에 접근할 수 있는 토큰을 발급하는 역할을 하는 애플리케이션을 의미한다.클라이언트 애플리케이션 : 인증서버에게 인증을 받고 리소스 오너의 리소스를 사용하는 주체를 의미한다. 지금 만들고 있는 서비스가 이에 해당한다. OAuth를 사용하면 인증 서버에서 발급받은 토큰을 사용해서 리소스 서버에 리소스 오너의 정보를 요청하고 ..
240524_TIL 오늘한일스프링부트 복습로그인/로그아웃 구현하기 JWThttps://charche.tistory.com/302
240523_TIL 오늘한일스프링 부트 복습블로그의 인증, 인가 쿠키&세션https://charche.tistory.com/301
로그인/로그아웃 구현하기 JWT 토큰기반 인증이란?사용자가 서버에 접근할 때 이상요자가 인증된 상요자인지 확인하는 방법은 대표적으로 사용자 인증 확인 방법으로 서버 기반 인증과 토큰 기반 인증이 있다. 스프링 시큐리티에서는 기본적으로 세셔 기반 인증을 제공해준다. 사용자마다 사용자의 정보를 담은 세션을 생성하고 저장해서 인증을 했다. 이를 세션 기반 인증이라고 한다. 토큰 기반 인증은 토큰을 사용하는 방법이다. 토큰은 서버에서 클라인터를 구분하기 위한 유일한 값인데 서버가 토큰을 생성해서 클라이언트에게 제공하면, 클라이언트는 이토큰을 갖고 있다가 여러 요청을 이 토큰과 함께 신청한다. 그럼 서버는 토큰만 보고 유효한 사용자인지 검증한다. 토큰을 전달하고 인증받는 과정인증 요청클라이언트: 아이디와 비밀번호를 서버에 전달하여 인증을 요청합..
블로그의 인증, 인가 쿠키&세션 스프링시큐리티스프링시큐리티는 스프링기반의 애플리케이션 보안을 담당하는 스프링 하위 프레임워크이다. 보안 관련 옵션을 많이 제공한다. 그리고 애너테이션으로 설정도 매우 쉽다. CSRF 공격, 세션 고정 공격을 방어해주고, 요청 헤더도 보안 처리를 해주므로 개발자가 보안 관련 개발을 해야 하는 부담을 크게 줄여준다.필터기반으로 동작하는 스프링 시큐리티 인증과 인가인증은 사용자의 신원을 입증하는 과정이다.인가는 인증과 다르다. 인가는 사이트의 특정 부분에 접근할 수 있는지 권한을 확인하는 작업이다. 스프링 시큐리티를 사용하여 구현하면 쉽게 처리 할수 있다.인증 절차: 사용자가 로그인 요청을 하면 UsernamePasswordAuthenticationFilter 또는 BasicAuthenticationFilte..
240520_TIL 오늘한일spring boot 복습블로그 만들어 보기https://charche.tistory.com/299
스프링 부트3로 블로그 만들기 REST APIREST API는 웹의 장점을 최대한 활용하는 API이다. 쉽게 말해 명확하고 이해하기 쉬운 API를 말한다. RESR API는 URL의 설계 방식을 말한다.  REST API의 특징REST API는 서버/클라이언트 구조, 무상태, 캐시 처리기능, 계층화, 인터페이스 일관성과 같은 특징이 있다. REST API의 장점과 단점REST API의 장점은 URL만 보고도 무슨 행동을 하는 API인지 명확하게 알 수 있다는 것이다. 그리고 상태가 없다는 특징이 있어서 클라이언트와 서버의 역할이 명확하게 분리된다. HTTP 표준을 사용하는 모든 플랫폼에서 사용 할 수 있다. 단점으로는 HTTP 메서드, 즉 GET, POST와 같은 방식의 개수에 제한이 있고, 설계를 하기 위해 공식적으로 제공되는 표준..