진짜
https 찾아본다고 엄청 고생했다..
nginx
greenlock?
cert-bot
그리고뭐
let's encrypt 이거
ssl
elb 등등.. 하 진짜 엄청 뭔가 찾아봣는데
다 실패
좌절하던중
그나마 삽질하면서
aws 서비스 자체와 좀 친해진감이있다.
이래놓고 갑자기 지불해야한다고 메일날라오면 손절각이긴하지만..
딱히 막 결제 이런거를 놓치고 막 누른건 없다.
기본은
https
어렵지않다.
첫째
도메인이 있어야한다.
ACM
아마존 썰티피케이트 매니지먼트
인증센터인데
서비스가 좀더 커져서 하나의 인증을 여러 서비스와 소통하고있다 요즘은
하지만 나는일단 아직 쉽게 바라보기로했다.
ACM은 아마존은 도메인이 있으면 인증서를 발급받을수있다.
SSL이라곤 안했다.
하지만
https로 포트포워딩하는데에는 지장이없다.
클라이언트측면에서보자.
보안그룹은 항상신경쓰자.
서버측면에서 보자.
네임서버등록은 최대 48시간 이라고하니
안됀다고 생각하지말고, aws는 시간싸움이다.
몇몇 처리에 시간이걸리는것들은 초조해하지말고 기다리자.
그리고 추가로 생각한것은
서버를먼저 만들자.
클라의 .env를 수정하니까
cloudFront부터해서 뭔가 쭉 깨졌다.
나같은경우는
클라이언트 https성공함
서버 https성공함
연결하려고하니까 클라이언트가 요청을 자꾸 잘못보냄
.env수정함 빌드해서 다시등록함
변화가 없음 (여기서 내가잘못한부분이 아마 클라우드프론트가 새로 빌드한파일로 최신화해줄때까지 기다리면되지않았을까? 이런생각도든다..)
s3 삭제 생성
클라우드프론트 삭제 생성
라우트53 삭제생성
별의별짓 다함.
지역변경
acm재발급
후.. 고생했지만 이제 https 쫄지않겠다.
AccessToken을 잘관리하는방법
1분정도의 expire를 주고 로컬스토리지에서 관리한다
위험하더라도 1분이니까 약간 상쇄되는거같다.
리프레시토큰을 쿠키에 저장한다.
https를 활성화시킨다면 리프레시토큰의 보안성은 많이높아진다.
클라이언트는 새로고침 or 액세스토큰의 만료시간 몇초전 ? setTimeout으로 주기적인 리프레시토큰을이용한 액세스토큰 최신화를 한다.
완벽한 보안이라는건 없다 라고얘기하고
결국 https의 쿠키 보안강화 부분에 의존해서 리프레시토큰에 많이 의존하고있다.
accessToken을 대신 1분으로 시간을 많이 짧게주는것이다.