Skip to content
najoan125 edited this page Nov 24, 2025 · 2 revisions

Hyfata REST API

A Production-Ready REST API with OAuth 2.0 Authorization Code Flow

Spring Boot 3.4.4 기반의 멀티테넌시 인증 API. Google OAuth, Discord OAuth와 동일한 보안 표준을 따릅니다.


📚 문서

Getting Started

OAuth 2.0 Documentation

Authentication System

Infrastructure


🌟 주요 기능

✅ OAuth 2.0 Authorization Code Flow

  • 보안 기반의 인증 흐름
  • 여러 사이트/앱 동시 지원
  • CSRF 방지 (State 파라미터)
  • 일회용 Authorization Code
  • 🆕 PKCE 지원 (RFC 7636) - 모바일 앱 보안

✅ 완전한 인증 시스템

  • JWT 기반 토큰 (Access + Refresh)
  • BCrypt 비밀번호 암호화
  • 2FA (2-Factor Authentication)
  • 이메일 검증
  • 비밀번호 재설정

✅ 멀티테넌시 지원

  • 클라이언트별 독립적인 frontendUrl
  • 동적 이메일 링크 생성
  • 클라이언트별 권한 관리

✅ 프로덕션 준비

  • PostgreSQL 데이터베이스
  • Flyway 데이터베이스 마이그레이션
  • 자동 정리 스케줄러
  • 상세 로깅

🔑 핵심 API 엔드포인트

OAuth 2.0 엔드포인트

메서드 엔드포인트 설명
GET /oauth/authorize Authorization 요청 → 로그인 페이지
POST /oauth/login 사용자 로그인 처리
POST /oauth/token Authorization Code → Token 교환

클라이언트 관리

메서드 엔드포인트 설명
POST /api/clients/register 새 클라이언트 등록
GET /api/clients/{clientId} 클라이언트 정보 조회

📞 Need Help?

상세 문서는 각 Wiki 페이지에서 확인하세요. 버그 리포트나 기능 요청은 GitHub Issues를 사용해주세요.

Clone this wiki locally