API 서버 만드는게 쉬운게 아니네요
서버리스 firebase nosql firestore 쓰다가 내꺼 sql 서버와 API 서버 만들어서 써야 겠다 생각하고 구축중인데
firestore 쓸때는 그냥 API 요청하고 결과값 받아서 쓰니까 간단하게 생각했는데
DDOS도 막아야되고, 남용 막으려고 조건부 캐싱도 넣어야 되고, 스키마 유효성도 철저하게 검증해야 되고
인증과 권한 때문에 JWT 혹은 OAuth2.0(SNS로그인)도 써야되고, http post에서는 로봇아님도 넣어야 되고
SSL이라고 알던게 사실 TLS로 이미 바뀌었는데 계속 SSL이라고 부른다는 것도 알게되고
TLS1.1은 이제 쓰지도 않고 1.2 1.3 쓴다는 것도
nginx rate limit, buffer, caching 넣고
go gin API 앱에서 caching과 rate limit을 어떤 조건부로 해야되는지 어느 정도해야 되는지 이것부터 어렵고
스키마 유효성도 철저히 한다고는 하지만 초보라서 불안해서 modsecurity 같은 웹어플리케이션방화벽을 nginix 앞에 설치해서 사용하는게 좋을 것 같은데 주어진 서버자원이 궁색하다보니 메모리 먹을까봐 추후에 고려하기로 하고
이것 저것 따지다 보니 클라우드에서 제공하는 API 게이트웨이를 사용하거나 Saas로 제공되는 API 보안서비스를 거쳐서 받아야 되는거 아닌가 싶기도 하고
밑에 국비커리큘럼 보니까 엄청나네요. 저야 뭐 아마추어고 개인프로젝트니까 시행착오 겪으면서 해도 되지만 프로로서 API 안전하게 관리한다는건 완전 다른일이겠지요