Backend Study/Server (14) 썸네일형 리스트형 쿠키, 세션, JWT 1. 쿠키와 세션을 사용하는 이유 HTTP 프로토콜은 Stateless(상태 정보 유지 X )와 Connectionless(비연결지향) 라는 특성을 가지고 있다. 실제 서비스에서는 데이터 유지가 필수적이다. 그렇지 않으면 매번 페이지를 이동할 때마다 로그인을 다시해야하고, 정보들이 저장되지 않는다. 이를 방지하기 위하여 쿠키와 세션을 사용한다. 쿠키와 세션의 차이점은 상태 정보의 저장위치이다. 쿠키는 클라이언트에, 세션은 서버에 저장된다. 2. 쿠키란? HTTP에서 클라이언트의 상태 정보를 클라이언트의 pc에 저장하였다가 필요시 정보를 재사용한다. 사용자가 어떠한 웹 사이트를 방문할 경우, 그 사이트에서 사용하고 있는 서버에서 사용자의 컴퓨터에 저장하는 작은 기록 정보 파일이라고 볼 수 있다. 동작 방식.. From 절 서브 쿼리 (=인라인뷰 서브 쿼리) FROM절 안에 서브쿼리가 들어있는 형태이다. 서브 쿼리를 끝마친 테이블 하나를 메인 쿼리의 FROM 테이블에서 잡는다. SELECT 학생 이름, 수학 점수 FROM (SELECT 학생.학생이름 AS 학생이름, 과목.과목점수 AS 수학 점수 FROM 학생, 과목 WHERE 학생.학생이름 = 과목.학생이름 AND 과목.과목이름 = '수학' ); 참고) [ Oracle ] SQL 서브쿼리 SELECT, FROM, WHERE 서브쿼리란? - 하나의 쿼리 문장 내에 포함된 또 하나의 쿼리 문장. - 비교연산자의 오른쪽에 기술해야 하고 반드시 괄호 안에 넣어야 함. - 메인 쿼리가 실행되기 이전에 한 번만 실행됨. SQL의 기 mjn5027.tistory.com 카카오 로그인 스프링부트 구현하기 (소셜 로그인) 참고) Kakao Developers 문서 Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 카카오 로그인은 카카오계정으로 다양한 서비스에 로그인할 수 있도록 하는 OAuth 2.0기반의 소셜 로그인 서비스이다. 카카오 로그인 사용 시, 서비스는 ID 및 비밀번호를 입력받고 검증하는 과정을 직접 구현하지 않고도 사용자에 대한 인증과 인가를 간편하고 안전하게 처리할 수 있다. 아래는 카카오에서 제공해주는 기능이다. 카카오 로그인은 카카오 계정의 사용자 자격 정보로 인가 코드를 받아오고, 인가 코드로 액세스 토큰과 리프레스 토큰을 얻는 두 단계로 구성.. OAuth 2.0 학습 전 알아야 할 주체 1. Resource Owner (유저) 2. Client (우리 서버) 3. Resource Server (데이터를 가진 서버) 등록 절차 우리의 서버 즉 client는 리소스 서버를 이용하기 위해서 미리 등록을 해둬야한다. 여기서 알아야 할 3가지 요소가 있다. Client ID, Client Secret(외부 노출 위험), Authorized Redirect URIs (Authorized code을 받을 주소) (Resource Server에 Authorized code를 입력하여 클라이언트는 Client ID와 Client Secret을 받는다.) 인증 과정 Resource Owner에게 client는 https://resource_server/?client_id=1&sc.. 쿼리문(Join, Group by, Union, Having, 변수) Join 1) Inner join 양쪽 테이블에서 모두 일치하는 레코드를 반환한다. (table1과 table2의 공통 부분을 반환) SELECT column FROM table1 INNER JOIN table2 ON table1.column=table2.column 2) Left join 왼쪽 테이블의 모든 레코드와 오른쪽 테이블의 일치하는 레코드를 반환한다. 3) Right join 오른쪽 테이블의 모든 레코드와 왼쪽 테이블의 일치하는 레코드를 반환한다. 4) Outer join 왼쪽 테이블과 오른쪽 테이블의 레코드 모두를 반환한다. Group by 그룹별 정보를 조회하는 용도로 사용된다. ex. 학년 별 성적 점수의 평균을 구하세요. 성별 별 최대 임금을 구하세요. Group by 함수와 함께 쓰이.. 리눅스 사용시 root? 리눅스 사용 중 root라는 용어, 아주 많이 접해봤을 것이다. root란 쉽게 한마디로 말하면 최고 관리자 이다. 리눅스 계열 운영체제에서 root계정은 반드시 존재하고, 운영체제의 모든 것을 제어할 권한을 가지게 된다. 그럼 컴퓨터 주인이 사용하는 계정과 차이점은 뭘까? 리눅스 운영체제에서는 컴퓨터 주인 계정이 root 계정보다 낮은 권한을 가진다. 리눅스를 사용할 때 sudo 라는 명령어 대부분 사용해봤을 것이다. -sudo 명령어는 유닉스 및 유닉스 계열 운영 체제에서, 다른 사용자의 보안 권한, 보통 슈퍼유저로서 프로그램을 구동할 수 있도록 하는 프로그램이다. 프로그램 - 위키백과, 우리 모두의 백과사전 ko.wikipedia.org 여기서 일반 계정과 root 계정의 차이를 느낄 수 있다. 나.. 이전 1 2 다음