diff --git a/app/routers/auth.py b/app/routers/auth.py index 2903292..27af060 100644 --- a/app/routers/auth.py +++ b/app/routers/auth.py @@ -8,7 +8,7 @@ from fastapi import APIRouter, Depends from sqlalchemy.ext.asyncio import AsyncSession from app.core.database import get_db -from app.core.security import get_current_user +from app.core.security import get_current_user, require_roles from app.models.user import User from app.schemas.auth import ( LoginRequest, @@ -51,3 +51,11 @@ async def refresh( @router.get("/me", response_model=UserOut) async def me(current_user: Annotated[User, Depends(get_current_user)]) -> User: return current_user + + +@router.get("/admin-only", response_model=UserOut) +async def admin_only( + current_user: Annotated[User, Depends(require_roles("Admin/Jerome", "Admin/Wahab"))], +) -> User: + """Example RBAC-protected endpoint — only Admins can access.""" + return current_user