Phase 1 & 2 완료: - 프로젝트 기본 구조 설정 - Docker Compose 환경 구성 (MongoDB, Redis, Backend, Frontend) - FastAPI 기반 OAuth 2.0 백엔드 구현 주요 기능: - JWT 기반 인증 시스템 - 3단계 권한 체계 (System Admin/Group Admin/User) - 사용자 관리 CRUD API - 애플리케이션 관리 CRUD API - OAuth 2.0 Authorization Code Flow - Refresh Token 관리 - 인증 히스토리 추적 API 엔드포인트: - /auth/* - 인증 관련 (register, login, logout, refresh) - /users/* - 사용자 관리 - /applications/* - 애플리케이션 관리 - /oauth/* - OAuth 2.0 플로우 보안 기능: - bcrypt 비밀번호 해싱 - JWT 토큰 인증 - CORS 설정 - Rate limiting 준비 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
63 lines
1.3 KiB
Plaintext
63 lines
1.3 KiB
Plaintext
# OAuth 2.0 Authentication System - Development Environment
|
|
|
|
# Application Environment
|
|
ENVIRONMENT=dev
|
|
|
|
# Security
|
|
SECRET_KEY=3bf17c7f-5446-4a18-9cb3-f885eba501e8
|
|
JWT_ALGORITHM=HS256
|
|
JWT_ACCESS_TOKEN_EXPIRE_MINUTES=30
|
|
JWT_REFRESH_TOKEN_EXPIRE_DAYS=7
|
|
|
|
# MongoDB Configuration
|
|
MONGODB_URL=mongodb://admin:admin123@localhost:27017/oauth_db?authSource=admin
|
|
DATABASE_NAME=oauth_db
|
|
|
|
# Redis Configuration
|
|
REDIS_URL=redis://localhost:6379
|
|
REDIS_DB=0
|
|
|
|
# API Configuration
|
|
API_HOST=0.0.0.0
|
|
API_PORT=8000
|
|
API_PREFIX=/api/v1
|
|
|
|
# Frontend Configuration
|
|
FRONTEND_URL=http://localhost:5173
|
|
|
|
# CORS Settings
|
|
CORS_ORIGINS=["http://localhost:5173", "http://localhost:8000"]
|
|
CORS_ALLOW_CREDENTIALS=true
|
|
|
|
# Rate Limiting
|
|
RATE_LIMIT_REQUESTS=100
|
|
RATE_LIMIT_PERIOD=60
|
|
|
|
# Backup and Archive Paths
|
|
BACKUP_PATH=/var/backups/oauth
|
|
ARCHIVE_PATH=/var/archives/oauth
|
|
|
|
# Logging
|
|
LOG_LEVEL=DEBUG
|
|
LOG_PATH=/var/log/oauth
|
|
|
|
# Email Configuration
|
|
EMAIL_ENABLED=false
|
|
SMTP_HOST=smtp.gmail.com
|
|
SMTP_PORT=587
|
|
SMTP_USER=
|
|
SMTP_PASSWORD=
|
|
EMAIL_FROM=noreply@oauth.local
|
|
|
|
# OAuth Client Defaults
|
|
DEFAULT_CLIENT_ACCESS_TOKEN_EXPIRE_MINUTES=60
|
|
DEFAULT_CLIENT_REFRESH_TOKEN_EXPIRE_DAYS=30
|
|
|
|
# Session Configuration
|
|
SESSION_SECRET_KEY=5d1cacb8-4d7e-4604-b553-e0251f8fbe7e
|
|
SESSION_COOKIE_NAME=oauth_session
|
|
SESSION_EXPIRE_MINUTES=1440
|
|
|
|
# Admin Configuration (Development Only)
|
|
ADMIN_EMAIL=admin@oauth.local
|
|
ADMIN_PASSWORD=admin123 |