본문 바로가기
반응형

Server, DevOps20

[AWS Lambda + API Gateway] CORS cookie 설정하기(+header에서는 보이지만 application에서는 보이지 않는 현상) 쿠키를 사용하게 된 배경 나는 현재 Web Storage에 JWT를 보관하여 사용자의 인가를 확인하는 방식으로 사이트를 운영중이었다. 백오피스이며, 실사용자가 많지 않고, 가입은 웹 상에서 불가했기 때문에 해당 방식으로도 보안상 큰 문제는 없을거라 판단했기 때문이다. 하지만, 점점 사용자가 늘어나고 권한에 따른 제약 기능이 생겨남으로 강화된 보안이 필요해졌다. Web Storage는 브라우저에서도 확인 및 조작이 가능하기 때문이다. 이렇게 콘솔에 storage만 쳐봐도 어떤 정보들이 저장되어있는지 확인할 수 있다. 그래서 조작이 불가능한 Cookie로 JWT 저장소를 변경하기로 했다. Cookie도 물론 조작이 가능하지만, 그 조작을 불가능하게 하는 옵션들이 있기에 가장 안전한 방법이 cookie에 저장.. 2023. 1. 26.
[AWS] Lambda Layer란? S3 vs Layer, nodej람다에서 코드 불러오기 저는 현재 프로젝트의 서버 단을 Serverless 서버로 채택하고 있습니다. 모든 서버단의 API를 람다로 만들어 API Gateway와 함께 사용하는 방법입니다. 그런데 모든 API에 공통으로 들어가야하는 jwt 검증 로직이 있는데 매번 람다에 이를 반복적으로 써주려니 1) 불편하기도 하고 2) 나중에 코드를 유지보수할 때도 모든 람다에 가서 수정을 해야하니 불편하겠다 싶더라구요! 이처럼 Lambda를 이용한 Serverless 환경에서 중복된 코드를 피하기 위해, 어딘가에 코드를 저장하여 그것을 여러 Lambda로 가져와 쓸 수 있도록 할 필요성이 생겨났습니다. 그리고 이 문제의 해결방법을 찾다가 Lambda Layer를 알게 되었습니다. 처음에는 s3에 코드를 저장하려고 했습니다. aws-sdk에.. 2022. 7. 20.
[ Lambda + API Gateway ] Lambda Event란? Lambda에 headers를 전달하는 방법 문제 현상 Client에서 Request headers를 전송했지만 API gateway에서 headers 정보를 찾아오지 못함 ** Lambda에서 headers에 저장되어 있는 jwt 정보를 이용하여 jwt 토큰을 검증해야 하는데 headers가 도착하지 못하여 로직 수행 불가한 상태 구조 예시: 여기서 잠깐, Event 개념, Lambda의 event란 무엇일까?? 이벤트 소스에서 읽어 Lambda 함수를 호출하는 Lambda 리소스 즉, Lambda는 실행되면서 전달되는 파라미터 값들을 event를 통해서 넘겨받게 된다. API Gateway와 함께 Trigger로 호출되는 경우엔 event는 request처럼 사용된다. 원인 AWS 공식 document [1]을 읽어보면 "Lambda 함수는 A.. 2022. 7. 11.
IntelliJ와 GitHub연동하기(2021 최신버전) 매번 이클립스를 쓰다가 기업에서는 이클립스 대신 IntelliJ를 쓴다는 것을 알게 되고 바꾸어보았는데, 진짜 이클립스보다 훨씬 편리했다. 오늘은 Github과 작업중인 로컬 프로젝트를 연동하는 방법을 소개하려한다. 1. Github 계정을 IntelliJ에 연동하기 (1) File에서 Settings 클릭 참고로 단축키는 ctrl+alt+S이다. (2) 설치한 Git의 실행파일의 경로를 설정해준다. (3) 바로 밑에 있는 Github을 클릭하고 Add account를 해준다. 나는 이미 연동이 되어있어서 +버튼으로만 추가를 할 수 있는데 아무것도 연동되어있지 않는 상태라면 바로 Add account가 뜰 것이다. 클릭하면 이처럼 자동으로 웹이 켜지고 웹으로 로그인에 성공하면 연동이 완료된다. (4) 계.. 2021. 12. 26.
반응형