MCPcopy Create free account
hub / github.com/TheSmallHanCat/flow2api / admin_login

Function admin_login

src/api/admin.py:725–751  ·  view source on GitHub ↗

Admin login - returns session token (NOT API key)

(request: LoginRequest, response: Response)

Source from the content-addressed store, hash-verified

723
724@router.post("/api/admin/login")
725async def admin_login(request: LoginRequest, response: Response):
726 """Admin login - returns session token (NOT API key)"""
727 admin_config = await db.get_admin_config()
728
729 if not AuthManager.verify_admin(request.username, request.password):
730 raise HTTPException(status_code=401, detail="Invalid credentials")
731
732 # Generate independent session token
733 session_token = f"admin-{secrets.token_urlsafe(32)}"
734
735 # Store in active tokens
736 active_admin_tokens.add(session_token)
737
738 response.set_cookie(
739 key=ADMIN_SESSION_COOKIE_NAME,
740 value=session_token,
741 httponly=True,
742 samesite="lax",
743 secure=False,
744 path="/",
745 )
746
747 return {
748 "success": True,
749 "token": session_token, # Session token (NOT API key)
750 "username": admin_config.username
751 }
752
753
754@router.post("/api/admin/logout")

Callers 1

loginFunction · 0.85

Calls 2

get_admin_configMethod · 0.80
verify_adminMethod · 0.80

Tested by

no test coverage detected