iframe의 domain별 제한을 위해 사용할 수 있는 header는 x-frame-options와 content-security-policy가 있다. x-frame-options는 IE를 사용하는 경우 문제가 없지만 다른 브라우저를 사용경우 무시될 수 있다. - Clickjacking 보호 - X-Frame-Options - HTTP | MDN content-security-policy header를 사용하여 iframe domain별로 제한하는 방법에 대하여 알아보았다. content-security-policy content-security-policy header를 추가하는 방법은 아래와 같다. Content-Security-Policy: ; content-security-policy의 poli..
사용자에게 보여지는 url이 길다는 요구사항과 QR code를 생성하는 요구사항이 생겨서 shorten 서비스를 구현하게 되었다. shorten 서비스를 DB에 연결하여 구현할 수 있지만 최대한 관리의 부담을 줄이는 설계를 구성하고자 S3를 사용한 shortener를 구현했다. 리다이렉션 방법 HTTP 리다이렉트: header location을 사용하는 방법 HTML 리다이렉션: tag를 사용하는 방법 자바스크립트 리다이렉션: 자바스크립트 내에서 window.location 프로퍼티를 사용하는 방법 리다이렉션 우선 순위는 아래와 같다. 페이지가 읽힌 적도 없고 전송된 적도 없는 경우, HTTP 리다이렉트가 항상 먼저 실행됩니다. 어떤 HTTP 리다이렉트로 없는 경우에, HTML 리다이렉트가 실행됩니다. ..

Clickjacking clickjacking을 예방 하지 않으면 웹 사이트에서 iframe 태그를 사용해서 주소가 다른 사이트를 불러올 수 있다. X-Frame-Options Invalid 'X-Frame-Options' header encountered when loading error가 발생한다. X-Frame-Options 은 iframe이 랜더링할 수 있는지 여부를 나타내는 header이다. X-Frame-Options을 사용하여 사이트 내 콘텐츠들이 다른 사이트에 포함되지 않도록 설정한다. 이 header는 X-Frame-Options는 확장 해더이기 때문에 모든 브라우저가 해당 옵션에 대해 동작하는것은 아니다. 다음 사진이 X-Frame-Options을 지원하는 browser 목록이다. 크롬..

DI를 활용하여 test code를 작성하는 방법에 대하여 알아보자. DI + test code class Robot { private helloService; constructor() { this.helloService = new HelloService(); } public start() { return this.helloService.hello(); } } 위와 같이 Robot class 안에 HelloService를 new하면 Robot은 HelloService에 종속하게 된다. Robot class의 test code를 작성하기 위해서는 HelloService의 hello mothod의 호출을 생각해야한다. 이러한 종속성을 제거하기 위해 inversify와 같은 DI container를 사용하여 ..
- Total
- Today
- Yesterday
- commit message
- conventional commit
- aws
- Clickjacking
- shorten
- inversify
- Terraform
- Elasticsearch
- nltk
- Cognito
- NLP
- Airflow
- typescript
- Lifecycle
- sementic version
- nginx
- Python
- Cloudfront
- Github Actions
- Neptune
- slowquery
- graphql
- mongoDB
- pagination
- AWS community day seoul
- Prisma
- JavaScript
- Develop
- lambda@edge
- mognodb
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |