개발/Node.js 5

[Node.js] OAuth 2.0을 사용하여 카카오 로그인 구현하기

OAuth 2.0이란?↓ ↓ ↓ ↓ ↓ [Node.js] OAuth 2.0OAuth 2.0이란? 사용자의 자원에 대한 액세스를 제한된 범위에서 제3자 애플리케이션이 안전하게 수행할 수 있도록 허용하는 인증 및 권한 부여 프로토콜 이 프로토콜은 사용자가 비밀번호와 같은xuwon.tistory.com 카카오 로그인을 구현하기 위해서 우선 카카오 디벨로퍼에서 애플리케이션 등록을 해야 합니다!등록 후 이 문서를 참고하며 구현해 보겠습니다. Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.com 애플리케이션 등록 후앱설정 - 앱키에서 REST API 키를 받아와 k..

개발/Node.js 2024.11.22

[Node.js] OAuth 2.0

OAuth 2.0이란? 사용자의 자원에 대한 액세스를 제한된 범위에서 제3자 애플리케이션이 안전하게 수행할 수 있도록 허용하는 인증 및 권한 부여 프로토콜 이 프로토콜은 사용자가 비밀번호와 같은 민감한 정보를 노출하지 않고 클라이언트가 이 사용자 데이터를 요청할 수 있게 한다.  OAuth 2.0의 구성 요소 1. Resource Owner- 데이터를 소유하고 있는 사용자2. Client- 자원 소유자의 데이터를 액세스하려는 제 3자 애플리케이션3. Authorization Server- 자원 소유자의 인증과 권한 부여를 관리하는 서버4. Resource Server- 자원 소유자의 데이터를 실제로 호스팅하는 서버5. Access Token- 클라이언트가 자원 서버에 요청을 보낼 때 사용하는 키- 제한된..

개발/Node.js 2024.11.20

[Node.js] CORS와 SOP의 개념 및 구현 방법

CORSCross-Origin Resource Sharing웹 페이지가 다른 출처(origin)에 있는 리소스에 안전하게 접근할 수 있도록 허용하는 메커니즘* origin- 도메인, 프로토콜, 포트를 의미- 웹의 보안을 위해 기본적으로 SOP(Same-Origin Policy)가 적용되어, 동일 출처가 아닌 리소스에 접근하는 것을 차단함.- 그러나 여러 서비스가 연동되는 웹 환경에서는 다른 출처의 리소스를 사용해야 할 때가 생김.→ CORS를 사용하면 가능함. SOPSame-Origin Policy웹 브라우저가 동일한 출처(origin)에서 로드된 리소스에만 접근할 수 있도록 제한하는 보안 정책.(즉, 같은 도메인, 프로토콜, 포트를 가진 경우에만 접근 가능)- 여러 출처에서 데이터를 필요로 하는 웹 애..

개발/Node.js 2024.11.13

[Node.js] HTTP와 HTTPS의 차이점 및 보안 메커니즘

HTTP 및 HTTPSHTTP HyperText Transfer Protocol Secure 웹에서 클라이언트와 서버 간에 데이터를 주고받기 위한 프로토콜- 웹 브라우저와 같은 클라이언트가 서버에 요청을 보내고, 서버는 이에 대한 응답을 클라이언트에게 보내는 방식 HTTP의 주요 특징1. 비연결성- 요청-응답이 끝나면 연결을 끊음.- 매 요청마다 새로운 연결을 설정해야 함.2. 무상태성- 각 요청은 서로 독립적이며, 이전 요청이나 응답의 상태를 기억하지 않음.- 이를 보완하기 위해 쿠키, 세션 등의 개념을 도입하여 상태 관리3. 요청과 응답의 구조- 클라이언트가 서버에 요청을 보내고, 서버가 그에 맞는 응답을 반환하는 요청-응답 구조로 작동- 이 과정에서 HTTP 메서드(GET, POST 등)와 상태 코..

개발/Node.js 2024.11.13

[Node.js] 네트워크의 기본 구조

네트워크의 종류네트워크는 LAN, MAN, WAN 이렇게 3가지 종류가 있습니다. LAN (Local Area Network)근거리 통신망으로, 학교나 사무실, 가정 등 특정 구역 내에서 네트워크를 형성하는 네트워크 유형- 비교적 작은 범위에서 운영- 높은 전송 속도- 네트워크 내의 자원(파일, 프린터 등)을 공유하기 위해 사용- ex) 가정용 와이파이 네트워크, 소규모 사무실 네트워크 MAN (Metropolitan Area Network) 도시 단위의 중간 범위에서 사용되는 네트워크.여러 개의 LAN을 연결하여 형성!- 도시나 대학교 캠퍼스처럼 LAN보다 큰 지역에서 사용- 특정 지역의 여러 네트워크를 연결하여 더 큰 네트워크를 형성함.- ex) 대학교 캠퍼스 네트워크 WAN (Wide Area Ne..

개발/Node.js 2024.11.13