본문 바로가기

Everyday Study81

2024.12.02(월) { VPC와 LAN, VLAN } AWS VPC와 LAN(Local Area Network)의 관계AWS에서 VPC(Virtual Private Cloud)는 가상 네트워크를 설정하는 기술로, LAN(Local Area Network, 로컬 영역 네트워크)과 비슷한 역할을 수행하지만 클라우드 환경에 맞게 설계된 네트워크입니다.1. VPC란?VPC는 AWS 클라우드 내에 설정하는 사용자 정의 가상 네트워크입니다.사용자가 네트워크 범위를 정의하고, 서브넷, 라우팅 테이블, 인터넷 게이트웨이 등을 설정할 수 있습니다.이를 통해 AWS 리소스(예: EC2, RDS)가 안전하고 격리된 네트워크 환경에서 실행됩니다.2. LAN과 VPC의 유사점특징LAN(Local Area Network)VPC(Virtual Private Cloud)격리된 네트워크.. 2024. 12. 2.
2024.10.29(화) { 토큰&세션&JWT, 로그인 요청처리 } 토큰&세션&JWT 1. 토큰 (Token)정의: 토큰은 인증 정보와 기타 데이터를 포함한 문자열로, 사용자가 인증되었음을 나타내거나 특정 권한을 부여받았음을 증명하는 데 사용됩니다.사용 예시:웹 애플리케이션에서 사용자가 로그인하면 서버는 사용자를 인증하고, 토큰을 발급하여 사용자의 인증 상태를 유지합니다.장점:무상태(stateless) 성격으로 서버가 인증 정보를 직접 저장할 필요가 없습니다.단점:토큰이 만료되기 전까지는 유효하여, 해킹 시 악용될 수 있으므로 보관에 주의가 필요합니다.2. 세션 ID (Session ID)정의: 세션 ID는 서버가 생성하고 클라이언트와 연결하는 고유한 ID로, 주로 쿠키에 저장되며 사용자가 로그인한 이후 서버에서 사용자 상태를 유지하는 데 사용됩니다.사용 예시:사용자가 .. 2024. 10. 29.
2024.10.28(월) { 세션고정, XSS, CSRF, Credential } 세션 고정(Session Fixation) **세션 고정(Session Fixation)**은 웹 애플리케이션에서 공격자가 미리 설정한 세션 ID를 사용자가 로그인할 때 그대로 사용하게 함으로써 세션을 가로채는 세션 하이재킹 공격입니다. 공격자는 피해자가 자신이 지정한 세션 ID로 로그인하도록 유도한 뒤, 동일한 세션 ID로 접근해 피해자의 권한을 얻고, 민감한 정보를 탈취하거나 시스템에 접근하는 방식입니다.세션 고정 공격의 과정공격자가 세션 ID 설정: 공격자는 애플리케이션에서 미리 발급받거나 임의로 생성한 세션 ID를 확보합니다.세션 ID를 피해자에게 전달: 공격자는 이메일, 링크, URL 등에 세션 ID를 포함시켜 피해자가 이를 통해 로그인하도록 유도합니다.URL을 통한 전달: 공격자는 세션 ID가.. 2024. 10. 28.
2024.10.21(월) { spring과 node.js, 스프링 MVC와 스프링 부트의 차이, 환경변수는 리눅스에서 나온것 } 스프링 프레임워크(Spring Framework)와 스프링 부트(Spring Boot)는 매우 강력하고 널리 사용되는 웹 애플리케이션 개발 프레임워크이지만, 일부 단점들이 존재하며 그중 하나는 확장성이 용이하지 않다는 지적이 있습니다. 이와 관련하여 Node.js와 비교하여 스프링의 단점 및 확장성 문제를 살펴보겠습니다.1. 스프링 프레임워크와 스프링 부트의 확장성 문제a. 복잡한 구조Spring은 구조가 복잡하고 설계가 무겁습니다. 특히, 엔터프라이즈급 애플리케이션에서는 많은 의존성과 설정이 필요합니다. 이러한 복잡성은 애플리케이션을 확장할 때 부담이 될 수 있습니다.스프링 부트가 스프링 프레임워크의 복잡성을 줄이기 위해 많은 자동 설정 기능을 제공하지만, 프로젝트가 복잡해지고 모듈이 많아지면 관리와 .. 2024. 10. 21.
2024.10.16(수) { CDN, MIME 타입, Accept 헤더, Vary 헤더, 아파치&톰캣 차이, addInterceptor } CDN(Content Delivery Network)CDN(Content Delivery Network)은 웹 개발에서 성능을 최적화하고 사용자 경험을 향상시키는 데 중요한 역할을 하는 기술입니다. 웹 개발자라면 CDN의 개념과 그 이점에 대해 이해하는 것이 좋습니다. 아래에서 CDN이 무엇인지, 웹 개발에서 CDN을 사용하는 이유, 장점, 그리고 CDN이 웹사이트 성능에 미치는 영향을 설명하겠습니다.1. CDN이란?CDN(콘텐츠 전송 네트워크)은 글로벌 네트워크에 분산된 서버들로 구성된 시스템으로, 사용자의 위치에 따라 가장 가까운 서버에서 콘텐츠를 제공하여 웹 페이지 로딩 속도를 최적화하는 기술입니다. CDN은 주로 이미지, CSS, JavaScript 파일, HTML, 동영상과 같은 정적 콘텐츠를 .. 2024. 10. 16.
2024.10.15(화) { WebMvcConfigurer, 인터셉터(Interceptor), redirect&forward, 필터체인 } WebMvcConfigurerWebMvcConfigurer는 Spring MVC에서 웹 애플리케이션의 설정을 커스터마이징할 수 있도록 제공되는 인터페이스입니다. Spring MVC는 기본적인 설정을 자동으로 처리해주지만, 때로는 개발자가 특정한 요구에 맞게 세부 설정을 변경해야 할 때가 있습니다. 이런 경우 WebMvcConfigurer를 구현하면 다양한 Spring MVC 기능을 재정의하거나 추가로 설정할 수 있습니다.WebMvcConfigurer의 역할WebMvcConfigurer 인터페이스는 Spring MVC에서 제공하는 여러 가지 설정 옵션을 쉽게 변경할 수 있도록 만들어졌습니다. 주로 다음과 같은 설정을 할 때 사용됩니다:View Controllers: 특정 URL을 컨트롤러 없이 바로 뷰로 .. 2024. 10. 15.