이메일 첨부파일을 구글 드라이브로 자동 전송하는 EmailDrop 구축 가이드
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- 개발자/IT 전문가: 서버리스 아키텍처와 자동화 흐름 구축에 관심 있는 분
- 난이도: 초보자에게 적합한 1-click 배포 기반 서버리스 템플릿
핵심 요약
- Postmark + AWS Lambda + Google Drive API를 활용한 이메일 첨부파일 자동 업로드 시스템 구축
- CloudFormation 스택으로 코드 없이 1-click 배포 가능
- OAuth 2.0 인증 흐름을 통해 Google Drive 접근 권한 자동 획득
섹션별 세부 요약
1. Google Cloud 프로젝트 생성 및 API 설정
- Google Cloud Console에서 프로젝트 생성 (예: PostmarkUploader)
- Google Drive API 활성화 및 OAuth 2.0 인증 화면 구성
- 테스트 유저 등록 및 Client ID/Secret 생성
2. CloudFormation 스택 배포
- PostmarkUploader 스택 생성 시 GoogleClientId/Secret, GoogleDriveFolder, LambdaTimeout 파라미터 입력
- AWS가 자동으로 IAM 리소스 생성 및 스택 배포
- OAuthURL 출력값을 Google Cloud의 OAuth 2.0 클라이언트에 등록
3. Postmark 설정 및 웹훅 연동
- Postmark 계정 생성 후 Inbound Webhook 설정
- PostmarkWebhookURL을 CloudFormation 스택 출력값으로 설정
- JSON payload 전달 설정 (첨부파일 추출)
4. 시스템 아키텍처
- Postmark: 이메일 수신 후 웹훅을 통해 첨부파일 데이터 전달
- API Gateway: OAuth 콜백 및 Postmark 웹훅 라우팅
- Lambda: OAuth 토큰 교환 및 첨부파일 Google Drive 업로드 처리
- Secrets Manager: OAuth Refresh Token 보안 저장
5. 테스트 및 실행
- Postmark 인바운드 이메일 주소로 첨부파일 이메일 발송
- Google Drive 지정 폴더에 자동 업로드
- CloudWatch에서 Lambda 로그 확인 (문제 시)
결론
- Postmark의 Inbound Webhook 기능을 활용하면 IMAP 대비 빠른 처리와 구조화된 이메일 데이터 접근이 가능
- CloudFormation 스택을 통해 코드 없이 1-click 배포 가능한 서버리스 아키텍처 구현 가능
- OAuth 2.0 흐름을 Lambda 내에서 처리하여 사용자 인증 절차 최소화 가능