You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix OAuth redirect loop and improve session security configuration
OAuth Improvements:
- Fix infinite redirect loop by implementing a "Direct Login Hijack" flow for Google, GitHub, and Generic providers.
- Move OAuth token storage from session cookies to the database to prevent "Cookie Too Large" errors.
- Ensure `SESSION_COOKIE_SECURE` is automatically enforced when OAuth is enabled.
Security & Configuration:
- Add new "Use via HTTPS" setting to Basic Configuration. This allows administrators to enforce `Secure` and `SameSite=Lax` cookies on standard/LDAP logins when running over HTTPS.
- Update application initialization to dynamically configure cookie security based on login type and settings.
- Clarify "Allow Reverse Proxy Authentication" setting description in the UI.
- Add static warning in OAuth settings emphasizing the HTTPS requirement.
Database:
-Fix OAuth redirect loop and improve session security configuration
OAuth Improvements:
- Fix infinite redirect loop by implementing a "Direct Login Hijack" flow for Google, GitHub, and Generic providers.
- Move OAuth token storage from session cookies to the database to prevent "Cookie Too Large" errors.
- Ensure `SESSION_COOKIE_SECURE` is automatically enforced when OAuth is enabled.
Security & Configuration:
- Add new "Use via HTTPS" setting to Basic Configuration. This allows administrators to enforce `Secure` and `SameSite=Lax` cookies on standard/LDAP logins when running over HTTPS.
- Update application initialization to dynamically configure cookie security based on login type and settings.
- Clarify "Allow Reverse Proxy Authentication" setting description in the UI.
- Add static warning in OAuth settings emphasizing the HTTPS requirement.
Database:
-Add config_use_https column to settings table.
<divclass="help-block">{{_('Trusts the "Remote-User" header from a reverse proxy for authentication. This is an authentication method, distinct from the HTTPS security setting below.')}}</div>
<labelfor="config_use_https">{{_('Use via HTTPS')}}</label>
254
+
<divclass="help-block">{{_('Enables secure cookie settings (Secure, SameSite=Lax). Enable this ONLY if you are accessing the server via HTTPS, otherwise you will be locked out.')}}</div>
<strong>{{_('Important:')}}</strong> {{_('OAuth authentication requires this server to be accessed via HTTPS. If you are using HTTP, login will fail.')}}
392
+
</p>
384
393
{% set generic = provider | selectattr('provider_name', 'equalto', 'generic') | first %}
0 commit comments