전체 글
-
JSX, Babel, webpackNode.js/프론트엔드 2020. 7. 12. 21:40
React로 어플리케이션을 만들 때 아래 두 방법으로 컴포넌트와 뷰들을 생성할 수 있다. 1. 표준 React 오브젝트와 메서드 사용 페이지에 react와 react-dom을 추가해주면 된다. 2. JSX(JavaScript + XML) 사용 JSX 문법에서는, 뷰 레이어를 생성하기 위해 JavaScript 안에 Hello World! 같은 HTML 엘레먼트를 사용할 수 있다. JSX를 사용하기 위해선 JSX를 이해하고 브라우저에서 실행 가능한 포맷으로 변환해 줄 transpiler가 필요하다. 이 역할을 Babel이 해준다. Transpiling은 클라이언트 기반과 서버 기반으로 나뉜다. 클라이언트 기반 transpiling은 파일 안에 script 태그를 포함하고, JSX를 로드하기 위해 type="..
-
Truncated time values using TIMEDIFF...에러 2020. 7. 11. 01:19
병원 예약 서비스를 만들면서 예약 시간이 다 됐는데도 PENDING(응답 대기중) 상태인 예약의 status 값을 자동으로 REFUSED 상태로 변경해주고, 예약 시간이 지난 ACCEPTED(수락됨) 상태인 예약의 status 값을 TIMEOUT 상태로 변경해주는 MySQL 이벤트 스케줄러를 생성했다. 30분마다 현재 시각과 예약 시간의 시간차가 0 이상인지를 체크하는 식인데, 어느날 잘 동작하던 스케줄러가 갑자기 제대로 동작하지 않았다. 정확히는 예약 시간이 지나도 예약들의 상태 값을 변경하지 않았다. 로그를 확인해보니 스케줄러가 실행될 때마다 truncated time values using TIMEDIFF... 이런 에러가 뜨고 있었다. timediff() 는 HH:MM:SS 형식의 TIME val..
-
Cookie, Session, JWT(+ JWT를 SSL과 함께 사용해야 하는 이유)카테고리 없음 2020. 7. 9. 17:33
Cookie는 작은 기록 정보 파일이자 클라이언트에 정보를 저장하는 기술이다. Cookie와 Session, 또는 Cookie와 토큰을 비교하는 것은 합당하지 않고 Cookie와 Local Storage를 비교하는 것이 맞다. Cookie와 Local Storage 둘 다 일종의 저장 방식이다. JWT는 Cookie나 Local Storage 안에 저장될 수 있다. 그리고 JWT와 Session을 비교하는 것이 맞다. 토큰은 서버가 사용자의 신원을 검증하기 위한 모든 정보를 가지고 있기 때문에 JWT의 내용을 찾기 위해 DB를 뒤질 필요가 없다. Session의 경우, 프론트엔드와 백엔드 두 부분을 가지고 있다. Session은 일부분을 백엔드에 저장하기 때문에 DB 공간을 차지한다. 사용자 인증이 얼마..
-
AWS Parameter StoreCloud/AWS 2020. 6. 18. 17:52
username이나 password, 데이터베이스 설정값, api key, 포트번호 등의 민감한 설정값들을 서버에 전달하는 방법은 다양하다. 하드 코딩하거나, 설정 파일을 만들어 프로그램을 시작할 때 로드하거나, EC2 인스턴스의 User Data에 설정값을 저장할 수 있다. 하지만 위 방법들은 서버에 설정값을 저장하기 때문에, 서버에 접속할 수 있으면 쉽게 찾아낼 수 있어 보안상 좋지 못하다. 따라서 구성 데이터 관리 및 암호 관리를 위한 안전한 계층적 스토리지를 제공하는 AWS System Manger Parameter Store에 설정값을 저장하여 관리하는 것이 좋다. 아래와 같이 사용하면 된다. docs.aws.amazon.com/ko_kr/systems-manager/latest/userguid..
-
EC2 인스턴스에 Docker 설치 및 서버 배포하기Cloud/Docker 2020. 6. 4. 18:45
1. Ubuntu Server 16.04 LTS로 EC2 인스턴스를 생성한다. 보안 그룹에 HTTP 80번 포트도 추가해놓자! 2. 우분투에 AWS CLI version 2를 설치한다. 필자는 Amazon S3, SNS, AWS System Manager Parameter Store 등을 사용해서 이 과정이 필수다! https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html Installing the AWS CLI version 2 on Linux - AWS Command Line Interface Installing the AWS CLI version 2 on Linux This section describes how to ins..
-
-
OWASP Top Ten(2017년 버전)전공/정보보안 2020. 5. 29. 11:37
https://owasp.org/www-project-top-ten/ OWASP Top Ten Web Application Security Risks | OWASP The OWASP Top 10 is the reference standard for the most critical web application security risks. Adopting the OWASP Top 10 is perhaps the most effective first step towards changing your software development culture focused on producing secure code. owasp.org 1. Injection 사용자가 입력하는 데이터는 항상 validation(검증)이 ..