fix(auth): Sitzungs-Cookie auch ueber http nutzbar, Anmeldung als Formular (#013)

Das Cookie erhielt im Produktionsbau immer Secure und wurde ueber http vom
Browser verworfen – nach der Anmeldung landete jeder Klick wieder auf der
Anmeldeseite. Massgeblich ist jetzt das Schema in APP_URL.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-17 23:41:01 +02:00
co-authored by Claude Opus 5
parent f838a44991
commit 2c2f842d20
31 changed files with 277 additions and 69 deletions
+12 -1
View File
@@ -54,7 +54,18 @@ describe("Sitzungen", () => {
).rejects.toThrow(/APP_SECRET/);
});
it("setzt das Cookie nur über HTTPS, wenn produktiv gebaut wurde", () => {
it("setzt Secure nur, wenn das Dashboard über HTTPS läuft", () => {
const vorher = process.env.APP_URL;
process.env.APP_URL = "https://proxledger.example.de";
expect(cookieOptionen().secure).toBe(true);
// Produktiv gebaut, aber über http erreichbar: sonst verwirft der Browser das Cookie
// und die Anmeldung landet sofort wieder auf der Anmeldeseite.
process.env.APP_URL = "http://192.168.1.50:3000";
expect(cookieOptionen().secure).toBe(false);
process.env.APP_URL = vorher;
expect(cookieOptionen().httpOnly).toBe(true);
expect(cookieOptionen().sameSite).toBe("lax");
});