INNER CODE UNIT · Python
require_admin
NextWeb4/lan-file-transfer · lan_transfer/api.py:150
async def require_admin(principal: Principal = Depends(current)) -> Principal:
if not principal.is_admin:
raise HTTPException(status_code=403, detail="Admin login required.")
return principal
return require_admin
def auth_error_response(exc: AuthError) -> HTTPException:
if isinstance(exc, LockedOutError):
return HTTPException(
status_code=423,
detail={
"message": str(exc),
"locked_until": exc.locked_until,
},
)
if isinstance(exc, RoleRequiredError):