mirror of
https://github.com/ivenator1/proxmox-management.git
synced 2026-07-18 11:28:21 +08:00
[PR #26] FastAPI-Users session authentication for dashboard #26
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
pull-request
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
ivenator1/proxmox-management#26
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/ivenator1/proxmox-management/pull/26
Author: @ivenator1
Created: 6/12/2026
Status: 🔄 Open
Base:
testing← Head:claude/remote-testing-branch-track-un1w64📝 Commits (7)
bb8844fMerge pull request #23 from ivenator1/claude/feature-enhancement-planning-i63dw2cf907e2Merge login implementation from testing branchdaa770aFix FastAPI-Users auth implementation54eb44cRemove broken test_web_app_auth.py file6a41cf0Align install.sh, login template, and web tests with session auth3cbf851Fix pyproject.toml: use fastapi-users>=14 and add aiosqlite9f24bc6Add fastapi-users and aiosqlite to tests/requirements.txt📊 Changes
12 files changed (+411 additions, -784 deletions)
View changed files
📝
install.sh(+1 -1)📝
proxmox_fleet/web/app.py(+23 -42)📝
proxmox_fleet/web/auth.py(+131 -39)📝
proxmox_fleet/web/init_db.py(+23 -73)📝
proxmox_fleet/web/models.py(+7 -6)📝
proxmox_fleet/web/templates/login.html(+20 -5)📝
pyproject.toml(+4 -8)📝
tests/requirements.txt(+2 -0)➖
tests/unit/test_init_db_cli.py(+0 -69)📝
tests/unit/test_web.py(+36 -24)➖
tests/unit/test_web_app_auth.py(+0 -172)📝
tests/unit/test_web_auth.py(+164 -345)📄 Description
Summary
Implement session-based authentication for the fleet dashboard using FastAPI-Users, CookieTransport, and JWTStrategy with persisted signing secret.
Key Features:
[email protected]) with password set at install time.fleet-auth-secret)install.shChanges
create_admin_user()auth.configure(), auth router mounting, auth dependencies on protected routes[email protected]), fetch-based submissioninit_dbcall during installationTest Coverage
Verification
Login works end-to-end:
./install.sh— prompts for admin password (with confirmation)/login[email protected]+ password → session cookie setGenerated by Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.