[PR #286] [MERGED] feat: Add persistent session authentication with configurable duration #319

Closed
opened 2025-11-20 04:14:05 -05:00 by saavagebueno · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/community-scripts/ProxmoxVE-Local/pull/286
Author: @michelroegl-brunner
Created: 11/7/2025
Status: Merged
Merged: 11/7/2025
Merged by: @michelroegl-brunner

Base: mainHead: feat/252_sessions


📝 Commits (1)

  • 8e2286d feat: Add persistent session authentication with configurable duration

📊 Changes

8 files changed (+456 additions, -57 deletions)

View changed files

📝 src/app/_components/AuthProvider.tsx (+43 -5)
📝 src/app/_components/GeneralSettingsModal.tsx (+165 -2)
📝 src/app/_components/HelpModal.tsx (+103 -5)
📝 src/app/api/auth/login/route.ts (+4 -3)
📝 src/app/api/auth/verify/route.ts (+8 -1)
📝 src/app/api/settings/auth-credentials/route.ts (+62 -34)
📝 src/app/page.tsx (+16 -2)
📝 src/lib/auth.ts (+55 -5)

📄 Description

Summary

This PR implements persistent session authentication with configurable session duration.

Features

  • Persistent session authentication with httpOnly cookies
  • Configurable session duration (1-365 days) in settings
  • Session expiration display in settings modal
  • Logout button next to theme toggle
  • Enhanced token verification with expiration time
  • Retry logic for failed auth checks
  • Comprehensive authentication documentation in help modal
  • Improved session restoration on page load

Changes

  • Enhanced AuthProvider with session expiration tracking
  • Added session duration configuration in GeneralSettingsModal
  • Added logout button in page header
  • Updated auth API routes to support session duration
  • Added authentication documentation to help modal
  • Improved cookie handling and session persistence

Testing

  • Sessions persist across page refreshes
  • Session duration configuration works correctly
  • Logout button appears when authenticated
  • Session expiration display updates correctly
  • Help documentation is accessible

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/community-scripts/ProxmoxVE-Local/pull/286 **Author:** [@michelroegl-brunner](https://github.com/michelroegl-brunner) **Created:** 11/7/2025 **Status:** ✅ Merged **Merged:** 11/7/2025 **Merged by:** [@michelroegl-brunner](https://github.com/michelroegl-brunner) **Base:** `main` ← **Head:** `feat/252_sessions` --- ### 📝 Commits (1) - [`8e2286d`](https://github.com/community-scripts/ProxmoxVE-Local/commit/8e2286d847d4ba0482cd8ff2619453cf7a2b36dd) feat: Add persistent session authentication with configurable duration ### 📊 Changes **8 files changed** (+456 additions, -57 deletions) <details> <summary>View changed files</summary> 📝 `src/app/_components/AuthProvider.tsx` (+43 -5) 📝 `src/app/_components/GeneralSettingsModal.tsx` (+165 -2) 📝 `src/app/_components/HelpModal.tsx` (+103 -5) 📝 `src/app/api/auth/login/route.ts` (+4 -3) 📝 `src/app/api/auth/verify/route.ts` (+8 -1) 📝 `src/app/api/settings/auth-credentials/route.ts` (+62 -34) 📝 `src/app/page.tsx` (+16 -2) 📝 `src/lib/auth.ts` (+55 -5) </details> ### 📄 Description ## Summary This PR implements persistent session authentication with configurable session duration. ## Features - ✅ Persistent session authentication with httpOnly cookies - ✅ Configurable session duration (1-365 days) in settings - ✅ Session expiration display in settings modal - ✅ Logout button next to theme toggle - ✅ Enhanced token verification with expiration time - ✅ Retry logic for failed auth checks - ✅ Comprehensive authentication documentation in help modal - ✅ Improved session restoration on page load ## Changes - Enhanced AuthProvider with session expiration tracking - Added session duration configuration in GeneralSettingsModal - Added logout button in page header - Updated auth API routes to support session duration - Added authentication documentation to help modal - Improved cookie handling and session persistence ## Testing - [x] Sessions persist across page refreshes - [x] Session duration configuration works correctly - [x] Logout button appears when authenticated - [x] Session expiration display updates correctly - [x] Help documentation is accessible --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
saavagebueno added the pull-request label 2025-11-20 04:14:05 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/ProxmoxVE-Local#319