CS (Computer Science)
-
CSRF와 XSS에 대한 설명CS (Computer Science) 2025. 1. 11. 00:14
CSRF와 XSS에 대한 설명CSRF (Cross Site Request Forgery)사용자의 의지와 무관하게 공격자가 의도한 요청(modify, delete 등)을 특정 웹사이트에 보내는 공격.사용자의 권한을 도용해 중요한 작업을 실행.ex) 사용자가 해커가 만든 피싱 사이트에 접속한 상태에서 자동 로그인이 활성화된 SNS 계정으로 광고성 글이 게시됨.대응 기법리퍼러(Referrer) 검증: 요청이 승인된 도메인에서 왔는지 확인.Security Token 사용: 서버에서 생성한 난수를 세션에 저장하고, 요청 시 해당 난수를 포함해 서버가 검증.단점: XSS에 취약하면 CSRF 공격 가능.XSS (Cross Site Scripting)공격자가 웹사이트에 악성 스크립트를 삽입해, 이를 열람한 사용자의 데..
-
CSR과 SSR에 대한 설명CS (Computer Science) 2025. 1. 11. 00:13
CSR과 SSR에 대한 설명CSR (Client-Side Rendering)클라이언트(브라우저)에서 JS를 사용해 HTML을 렌더링클라이언트가 서버로부터 데이터를 받아 동적으로 페이지를 생성단일 페이지 애플리케이션(SPA)에 주로 사용된다.*SPA(Single Page Application) : 한 개의 HTML 페이지에서 동적으로 콘텐츠를 로드하며 페이지 전환SSR (Server-Side Rendering)서버에서 HTML을 완전히 렌터링한 후 클라이언트(브라우저)에 전달클라이언트는 이미 완성된 HTML을 받아 바로 화면에 표시한다.멀티 페이지 애플리케이션(MPA) 및 SEO 중심 웹사이트에 주로 사용된다.*MPA(Multi Page Application) : 각 페이지마다 별도의 HTML 파일을 서버..
-
JWT (JSON Web Token)CS (Computer Science) 2025. 1. 11. 00:07
JWT (JSON Web Token)JWT는 두 개체(ex: 클라이언트와 서버)간 정보를 안전하게 전달하기 위한 웹 표준(RFC 7519)이다.로그인 인증과 API 보안 등에 자주 사용되며 Header, Payload, Signature의 세 부분으로 구성된다.Header (헤더)토큰 타입(typ)과 해싱 알고리즘(alg) 두가지 정보를 지니고 있다.ex){ "typ": "JWT", "alg": "HS256"}Payload (페이로드)토큰에 담길 정보(Claim클레임)를 포함클레임은 크게 세분류로 나눠진다.등록된 클레임 : 표준화된 정보 (ex: exp-만료시간, iat-발급시간, iss-토큰 발급자 등)공개 클레임 : URI 형식으로 충돌 방지된 정보비공개 클레임 : 양측 간 합의된 데이터ex){ ..
-
OAuth1.0과 OAuth2.0CS (Computer Science) 2025. 1. 11. 00:02
OAuth 1.0(Open Authorization)OAuth는 애플리케이션이 사용자 정보를 사용자 비밀번호를 요구하지 않고 제3의 서비스(예: Google, Facebook)로부터 안전하게 접근할 수 있도록 인증을 제공하는 권한 부여 프레임워크이다.주로 로그인이나 API 접근에 사용된다OAuth 2.0OAuth의 개선된 버전으로, 보안과 사용 편의성을 강화한 프레임워크클라이언트 애플리케이션, 서버 간의 통신을 분리하고 다양한 인증 흐름을 제공OAuth 1.0의 흐름Request Token 요청: 클라이언트가 Consumer Key와 Secret으로 Request Token을 요청하고, 서버가 Request Token과 Secret을 반환.사용자 권한 승인:사용자가 인증 서버에 로그인하여 Request ..
-
Web Server와 WAS의 차이CS (Computer Science) 2025. 1. 11. 00:01
Web Server와 WAS의 차이Web Server (웹 서버)역할:정적 콘텐츠(HTML, CSS, 이미지 등)(= 바뀌지 않는 페이지)를 클라이언트(브라우저)에 빠르게 제공.동적 콘텐츠 요청은 WAS로 전달.예시:클라이언트가 index.html 요청 → 웹 서버가 바로 반환.사용 이유:정적 콘텐츠를 효율적으로 처리해 WAS의 부하를 줄임.종류:Apache, Nginx 등.WAS (Web Application Server, 웹 애플리케이션 서버)역할:동적 콘텐츠를 처리(예: DB 조회, 로직 실행)(=인자에 따라 바뀌는 페이지).JSP/Servlet 실행 환경 제공, (WAS는 웹 컨테이너 or 서블릿 컨테이너라고도 불린다.)예시:클라이언트가 상품 목록 요청 → WAS가 DB 조회 후 결과를 동적으로 ..
-
REST API, RESTful APICS (Computer Science) 2025. 1. 10. 23:59
REST API, RESTful APIREST (Representational State Transfer)REST는 HTTP 프로토콜을 기반으로 자원을 관리하고 통신하기 위한 아키텍처 스타일이다자원을 URI로 표현ex)https://example.com/users/123HTTP 메서드 사용GET, POST, PUT, DELETERESTful APIREST의 원칙을 준수하여 설계된 API를 RESTful API라고 한다.(REST원칙을 따라는 API이다.)REST API와 RESTful API의 차이점항목REST APIRESTful API개념REST 아키텍처 스타일을 따르는 APIREST 원칙을 더욱 철저히 준수한 REST APIREST 원칙 준수 여부REST 원칙을 완전히 지키지 않을 수도 있음REST ..
-
HTTP status codeCS (Computer Science) 2025. 1. 10. 23:56
HTTP status code클라우드 환경에서 HTTP API를 통해 통신하는 것이 대부분이때, 응답 상태 코드를 통해 성공/실패 여부를 확인할 수 있으므로 API 문서를 작성할 때 꼭 알아야 할 것이 HTTP status code다10x : 정보 확인20x : 통신 성공30x : 리다이렉트40x : 클라이언트 오류50x : 서버 오류200번대 : 통신 성공상태코드이름의미200OK요청 성공(GET)201Create생성 성공(POST)202Accepted요청 접수O, 리소스 처리X204No Contents요청 성공O, 내용 없음300번대 : 리다이렉트상태코드이름의미300Multiple Choice요청 URI에 여러 리소스가 존재301Move Permanently요청 URI가 새 위치로 옮겨감304Not M..
-
HTTP Request MethodsCS (Computer Science) 2025. 1. 10. 23:32
GET데이터를 서버에서 가져올 떄 사용ex) 사용자 정보 가져오기, 상품 목록 조회POST서버에 데이터를 전송하여 새로운 리소스를 생성하거나 특정 작업을 수행ex) 회원 가입, 게시글 작성*리소스 : 웹에서 다루는 모든 데이터나 파일 같은 것PUT서버에 데이터를 전송하여 기존 리소스를 수정하거나 새로운 리소스를 생성ex) 회원 정보 수정, 게시글 수정DELETE서버에서 특정 리소스를 삭제ex) 계정 삭제, 게시글 삭제PATCH리소스의 일부만 수정ex) 사용자 비밀번호 수정OPTIONS서버와 클라이언트 간의 연결 설정을 확인ex) CORS 정책 확인*CORS(Cross-Origin Resource Sharing) : 다른 도메인 간의 요청을 허용하거나 제한하는 보안 메커니즘TRACERequest 리소스가 ..