개발/WEB

· 개발/WEB
https://github.com/SeolSongWoo/WebStudyProject GitHub - SeolSongWoo/SampleOAuth: wwwwww. Contribute to SeolSongWoo/SampleOAuth development by creating an account on GitHub.github.com 디바운싱이란?디바운싱이란 사용자가 이벤트를 몇 번이나 발생 시키든 이벤트 발생을 멈추고 지정된 시간까지 지난 후에야 이벤트가 한번만 실행 되도록 하는 기법이다. let timer_id; function debouncing(func) { if(timer_id) { clearTimeout(timer_id); ..
· 개발/WEB
https://www.youtube.com/watch?v=6WZ6S-qmtqYByteByteGo의 API 보안 강화를 위한 12가지 팁  위 영상은 ByteByteGo에서 제시한 12가지 API 보안을 강화하는 전략에 대한 영상이다.영상에서 소개한 그 방법 12가지를 정리해보았다! 1) Use HTTPSHTTPS란?HTTPS는 HTTP에 SSL/TLS 보안 프로토콜을 적용한 것으로 데이터가 전송되는 동안 암호화되어, 클라이어느와 서버 간에 안전하게 데이터를 전송할 수 있도록 해준다.암호화는 데이터가 도난, 도청(Eavesdropping), 변조(Man-in-the-Middle,MiTM) 되는 것을 방지하며, 이는 사용자의 개인정보, 로그인 자격증명 및 기타 민감한 정보를 안전하게 유지하는 역할을 한다.언..
· 개발/WEB
회원가입이나 로그인이 필요한곳 어디든 Google, Naver, Kakao, twiter등 외부 계정을 기반으로 간편히 회원가입 및 로그인 할 수 있는 웹,앱 어플리케이션을 쉽게 찾아볼 수 있다. 이때 사용 되는 프로토콜을 OAuth라한다, 단순히 로그인뿐만이 아니라 예를 들어 Google로 로그인하면 API를 통해 연동된 Calendar 정보를 가져와 사용자에게 보여줄수 있다. [OAuth란?]OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준이다. (위키백과) [OAuth 참여자]OAuth 동작에 관여하는 참여자는 크게 세 가지로 구분할 수 있..
· 개발/WEB
진행 중인 프로젝트에 실시간 알림 기능 구현이 필요해졌습니다. 실시간 알림 기능은 클라이언트가 서버에게 요청을 보내는 기존 기능과는 달리, 서버가 클라이언트에게 데이터를 보내면 클라이언트가 이를 인지하고 알림을 띄워줘야하는 구조를 가지고 있습니다. HTTP 프로토콜의 주요 특징은 비연결성 입니다. 따라서 위와 같은 경우, Server가 전송하고 싶어도 해당 Client와 지속적으로 연결이 되어있지 않기 때문에 보낼 수 없는 상황이 발생하게 되는 것입니다. 이를 해결하는 방식으로 폴링, 긴 폴링, 소켓, SSE 총 네 가지가 존재합니다. Polling Client가 주기적으로 Server로 요청을 보내는 방식입니다. 일정시간마다 client가 Server로 요청을 보내 데이터 갱신이 있는지 확인하고, 갱신..
· 개발/WEB
개요 웹 어플리케이션에서 로그인을 구현하는 방법은 크게 쿠키, 세션을 이용하는 방법과 토큰을 이용하는 방법 2가지가 있습니다. 간단히 말하면 쿠키, 세션 방식은 서버에서 세션아이디를 기록하고 브라우저에서 쿠키를 저장하는 방법이고 토큰 방식은 토큰을 발행하여 토큰의 유효성을 검증하는 방법입니다. 쿠키, 세션 (cookie, session) 사용자(클라이언트)가 서버에 자원을 요청 시 서버에서 사용자를 특정할 수 있는 데이터를 기반으로 세션 아이디를 생성하고, 해당 아이디를 키값으로 하여 필요한 값들을 서버의 메모리에 저장하고, HTTP 프로토콜의 header의 setCookie를 통해서 브라우저의 쿠키에 세션 아이디를 기록하도록 합니다. 브라우저는 request 요청을 보낼 시 header에 cookie를..
· 개발/WEB
1. [SSL디지털 인증서?] SSL 인증서는 클라이언트와 서버간의 통신을 제3자가 보증해주는 전자화된 문서다. 클라이언트가 서버에 접속한 직후에 서버는 클라이언트에게 이 인증서 정보를 전달한다. 클라이언트는 이 인증서 정보가 신뢰할 수 있는 것인지를 검증 한 후에 다음 절차를 수행하게 된다. SSL과 SSL 디지털 인증서를 이용했을 때의 이점은 아래와 같다. 통신 내용이 공격자에게 노출되는 것을 막을 수 있다. 클라이언트가 접속하려는 서버가 신뢰 할 수 있는 서버인지를 판단할 수 있다. 통신 내용의 악의적인 변경을 방지할 수 있다. 2. HTTP 통신의 문제점 HTTP를 사용하여 통신하고있는 내 도메인을 확인해보겠다. 스마트스니퍼를 이용하여 패킷을 가져와보겠다. 기존 HTTP방식에서는 데이터가 암호화되..
SUSEOL
'개발/WEB' 카테고리의 글 목록