1.7 KiB
1.7 KiB
Auth Server 구축 및 Gmail OAuth 연동
날짜: 2025-07-17
작업자: happybell80 & Claude
오후 5시 37분
Gmail OAuth 구현 및 파일 기반 토큰 저장
배경:
- email skill을 사용하기 위해 Gmail OAuth 인증 필요
- 중앙 인증 서버(auth.ro-being.com) 구축하여 토큰 관리
주요 작업 내용:
-
초기 상태 확인
- auth-server 컨테이너는 실행 중이었으나 Gmail OAuth 구현 안됨
- 서버와 로컬 코드 불일치 (서버에 placeholder만 존재)
-
Google OAuth 설정 문제
- Google Client Secret이 실제 값이 아님
- OAuth consent screen이 테스트 모드
- 테스트 사용자 추가 필요 (goeun2dc@gmail.com, happybell80@naver.com)
-
Scope 문제 해결
- Google이 scope 순서를 자동 변경하여 오류 발생
- 처음 시도: openid, email scope 추가 → 실패
- 해결: gmail.modify scope 사용 (읽기/쓰기/전송 모두 포함)
- 최종 해결: requests.post()로 직접 토큰 교환하여 scope 검증 우회
-
파일 권한 문제
/code/tokens디렉토리 권한 부족으로 토큰 저장 실패- 해결:
chmod 777 tokens로 모든 권한 부여
-
구현 내용
- 파일 기반 토큰 저장 (
/code/tokens/{user_id}_gmail.json) - status API: 토큰 상태 확인
- tokens API: 저장된 토큰 조회
- aiofiles 패키지 추가
- 파일 기반 토큰 저장 (
최종 결과:
- Gmail OAuth 인증 성공
- 토큰 파일 생성 및 저장 완료
- Access Token과 Refresh Token 모두 획득
- auth-server API 정상 작동
다음 단계:
- email skill과 auth-server 연동
- PostgreSQL 기반 영구 저장소 구현