refactor: centralize auth system across all modules
All modules now use the main IAM JWT (ACCESS_TOKEN_SECRET) for authentication, removing three separate auth systems (hackathon Supabase, hackathon JWT, QR JWT). Changes: - hackathon: replace HackathonJwtService with decode_access_token() from imphnen-libs - remove entire src/auth/ (Supabase signup/login/GitHub/forgot-reset) - remove common/hackathon_jwt.rs, common/supabase_client.rs - remove Supabase from HackathonConfig (JWT, GitHub OAuth, Supabase anon/service keys) - replace Supabase Storage with MinioService from imphnen-libs - all route jwt params removed; hackathon_router takes MinioService instead - qr: replace QrJwtService with decode_access_token() from imphnen-libs - remove entire src/auth/ (register/login/Google OAuth/refresh) - remove common/qr_jwt.rs, src/config.rs - qr_auth_middleware now lazy-upserts users into QR DB on first access - qr_router(pool) — no config needed - gateway: create MinioService once and pass to hackathon_router; qr_router simplified Users now register/login via /v1/auth/* and use the same JWT for all endpoints. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
4bba182ea3
commit
2ae43b3bcc
@@ -4,11 +4,10 @@ use std::sync::Arc;
|
||||
use crate::invitations::application::invitation_service::InvitationServiceImpl;
|
||||
use crate::invitations::domain::service::InvitationService;
|
||||
use crate::invitations::infrastructure::persistence::PostgresInvitationRepository;
|
||||
use crate::common::hackathon_jwt::HackathonJwtService;
|
||||
use crate::middleware::hackathon_auth::hackathon_auth_middleware;
|
||||
use super::handlers::*;
|
||||
|
||||
pub fn build_invitation_routes(pool: Arc<PgPool>, jwt: Arc<HackathonJwtService>) -> Router {
|
||||
pub fn build_invitation_routes(pool: Arc<PgPool>) -> Router {
|
||||
let service: Arc<dyn InvitationService> = Arc::new(InvitationServiceImpl::new(
|
||||
Arc::new(PostgresInvitationRepository::new(pool.clone())),
|
||||
));
|
||||
@@ -17,7 +16,6 @@ pub fn build_invitation_routes(pool: Arc<PgPool>, jwt: Arc<HackathonJwtService>)
|
||||
.route("/invitations/:invitation_id/respond", post(respond_to_invitation_handler))
|
||||
.route("/invitations/teams/:team_id/invite", post(invite_team_member_handler))
|
||||
.layer(Extension(service))
|
||||
.layer(Extension(jwt.clone()))
|
||||
.layer(Extension(pool))
|
||||
.layer(from_fn(hackathon_auth_middleware))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user