fix: OAuth 토큰 자동 갱신 패턴 정정 및 수동 갱신 실행 기록
- 크론잡 방식이 아닌 API 호출 시점 자동 갱신이 정상 패턴임을 명확화 - skill-email과 rb8001의 토큰 만료 체크 로직 부재 문제 지적 - 모든 사용자 토큰 수동 갱신 완료 (0914eagle, cdctfm, happybell80) - OAuth client 정보 환경변수와 일치하도록 수정 - 정상 구현 패턴 코드 예시 추가
This commit is contained in:
parent
1eb25cb9fa
commit
e995834af8
@ -134,9 +134,10 @@ new_expiry = datetime.now(timezone.utc) + timedelta(seconds=expires_in)
|
||||
```
|
||||
|
||||
### 5.2 자동 갱신 메커니즘 부재
|
||||
- 현재: 수동 API 호출만 가능 (`/api/gmail/refresh/{user_id}`)
|
||||
- 필요: 크론잡 또는 스케줄러로 자동 갱신
|
||||
- 추천: 토큰 만료 1시간 전 자동 갱신 트리거
|
||||
- **근본 문제**: skill-email과 rb8001이 Gmail API 호출 시 토큰 만료 체크 안함
|
||||
- **정상 패턴**: API 호출 전 토큰 만료 확인 → 만료 시 refresh_token으로 자동 갱신
|
||||
- **현재 구현**: 만료된 토큰 그대로 사용 → 에러 발생
|
||||
- **필요 조치**: Gmail API 호출 전 토큰 만료 체크 및 갱신 로직 추가
|
||||
|
||||
---
|
||||
|
||||
@ -326,10 +327,12 @@ FROM gmail_tokens;
|
||||
new_expiry = datetime.now(timezone.utc) + timedelta(seconds=expires_in)
|
||||
```
|
||||
|
||||
2. **토큰 자동 갱신 크론잡 구현**
|
||||
- 매시간 만료 임박 토큰 체크
|
||||
- 만료 1시간 전 자동 갱신
|
||||
- 갱신 실패 시 알림
|
||||
2. **API 호출 시점 자동 갱신 구현**
|
||||
```python
|
||||
# skill-email과 rb8001에 추가 필요
|
||||
if token.expiry < datetime.now():
|
||||
token = refresh_gmail_token(user_id)
|
||||
```
|
||||
|
||||
### 13.2 영향받는 서비스
|
||||
- rb8001 일일 요약 (매일 오전 9시)
|
||||
@ -434,11 +437,13 @@ FROM gmail_tokens;
|
||||
✅ **Timezone 버그 수정 성공**
|
||||
- UTC 시간대가 올바르게 적용됨
|
||||
- 토큰 갱신 API가 정상 작동
|
||||
- 자동 갱신 메커니즘 복구 완료
|
||||
- **주의**: 자동 갱신 메커니즘은 여전히 없음 (수동 갱신 필요)
|
||||
|
||||
### 15.5 남은 작업
|
||||
- 0914eagle, cdctfm 사용자 토큰 재인증 필요
|
||||
- 자동 갱신 크론잡 구현 권장
|
||||
### 15.5 수동 갱신 실행 (2025-08-25 00:55)
|
||||
- 0914eagle, cdctfm OAuth client 정보 수정 후 수동 갱신 완료
|
||||
- 모든 사용자 토큰 현재 유효 상태 (1시간)
|
||||
- **중요**: API 호출 시점 자동 갱신 로직 없어 임시로 수동 갱신 실행
|
||||
- **정상 구현**: Gmail API 호출 전 토큰 체크 및 자동 갱신 필요
|
||||
|
||||
---
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user