작업 스케줄러
tinyauth는 만료된 토큰, 사용된 인증 코드, 이메일 인증 토큰 같은 임시 데이터를 주기적으로 정리하는 내장 스케줄러를 제공해요. 이 설정은 scheduler와 cleanup 최상위 섹션으로 구성돼요.
스케줄러 설정
섹션 제목: “스케줄러 설정”scheduler: enabled: true cron: '0 2 * * *'scheduler.enabled: 내장 스케줄러를 활성화할지 여부예요. 기본값은true예요.scheduler.cron: 정리 작업 실행 주기예요. 표준 5필드 cron 형식(분 시 일 월 요일)을 사용해요. 기본값은0 2 * * *(매일 오전 2시)예요.
정리 정책 (cleanup)
섹션 제목: “정리 정책 (cleanup)”각 데이터 유형별로 정리 정책을 세밀하게 설정할 수 있어요.
기간 형식
섹션 제목: “기간 형식”정리 정책의 보존 기간(retention)은 다음과 같은 형식을 사용해요.
| 형식 | 의미 | 예시 |
|---|---|---|
"0" | 즉시 (보존 기간 없음) | 만료 즉시 삭제 |
"30s" | 초 | 30초 |
"30m" | 분 | 30분 |
"24h" | 시간 | 24시간 |
"7d" | 일 | 7일 |
"1y" | 년 (365일) | 1년 |
취소된 토큰 (revoked_tokens)
섹션 제목: “취소된 토큰 (revoked_tokens)”cleanup: revoked_tokens: enabled: true retention: '0'enabled: 취소된 토큰 정리 활성화 여부예요. 기본값은true예요.retention: 토큰 만료 후 보존 기간이에요. 기본값은"0"(만료 즉시 삭제)이에요.
OAuth 인증 코드 (oauth_codes)
섹션 제목: “OAuth 인증 코드 (oauth_codes)”cleanup: oauth_codes: enabled: true consumed_retention: '24h'enabled: 인증 코드 정리 활성화 여부예요. 기본값은true예요.consumed_retention: 사용된 인증 코드의 보존 기간이에요. 기본값은"24h"예요.
이메일 인증 (email_verifications)
섹션 제목: “이메일 인증 (email_verifications)”cleanup: email_verifications: enabled: true retention: '0'enabled: 만료된 이메일 인증 토큰 정리 활성화 여부예요. 기본값은true예요.retention: 만료 후 보존 기간이에요. 기본값은"0"이에요.
비밀번호 재설정 (password_resets)
섹션 제목: “비밀번호 재설정 (password_resets)”cleanup: password_resets: enabled: true retention: '0'enabled: 만료된 비밀번호 재설정 토큰 정리 활성화 여부예요. 기본값은true예요.retention: 만료 후 보존 기간이에요. 기본값은"0"이에요.
대기 중인 OAuth 가입 (pending_oauth_registrations)
섹션 제목: “대기 중인 OAuth 가입 (pending_oauth_registrations)”cleanup: pending_oauth_registrations: enabled: true retention: '0'enabled: 중단된 OAuth 가입 흐름 정리 활성화 여부예요. 기본값은true예요.retention: 만료 후 보존 기간이에요. 기본값은"0"이에요.
관련 설정
섹션 제목: “관련 설정”account_deletion.enabled: 사용자가 스스로 계정 삭제를 요청할 수 있는지 결정해요.account_deletion.retention: 삭제 요청 후 실제 영구 삭제까지의 유예 기간이에요.tinyauth cleanup이 실행될 때 이 정책이 적용돼요.tokens.key_rotation.*: JWT 키 순환 정책이에요. 정리 작업과 같은 유지보수 시점에 함께 반영돼요.
전체 예시
섹션 제목: “전체 예시”tokens: key_rotation: enabled: true interval_days: 30 overlap_days: 7
account_deletion: enabled: true retention: 30d
scheduler: enabled: true cron: '0 2 * * *'
cleanup: revoked_tokens: enabled: true retention: '0' oauth_codes: enabled: true consumed_retention: '24h' email_verifications: enabled: true retention: '0' password_resets: enabled: true retention: '0' pending_oauth_registrations: enabled: true retention: '0'CLI 명령어
섹션 제목: “CLI 명령어”스케줄러와 별개로, CLI를 통해 수동으로 정리 작업을 실행할 수도 있어요.
# 정리 작업 실행tinyauth cleanup
# 실제 삭제 없이 대상만 확인 (드라이 런)tinyauth cleanup --dry-run
# 상세 진행 상황 출력tinyauth cleanup --verbose
# 커스텀 설정 파일 사용tinyauth cleanup -c /path/to/config.yaml