Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow configuring login cookie with an expiry duration #7301

Open
nb-programmer opened this issue Apr 5, 2025 · 0 comments
Open

Allow configuring login cookie with an expiry duration #7301

nb-programmer opened this issue Apr 5, 2025 · 0 comments
Labels
enhancement Some improvement that isn't a feature

Comments

@nb-programmer
Copy link

What is your suggestion?

Allow configuring an (optional) expiry age for the login cookie so that it persists beyond a browser session. This is handy for not re-entering the password every time.

Possible change:
https://github.com/coder/code-server/blob/main/src/node/http.ts#L328

...
return {
  domain: getCookieDomain(url.host, req.args["proxy-domain"]),
  path: normalize(url.pathname) || "/",
  sameSite: "lax",
  // Load, if provided, max age for login cookie. 0 means it becomes a Session cookie (according to Express docs)
  maxAge: getConfigCookieMaxAgeAsMilliseconds() || 0,
}

Why do you want this feature?

I want to maintain my login status even after closing the browser (as the Cookie is currently session-only). Say keep the login cookie for a week or a month. Adding a max-age changes the cookie from Session to persistent for the given duration using Express' maxAge parameter (docs).

Are there any workarounds to get this functionality today?

No, none directly. User can manually edit the cookie in Devtools

Are you interested in submitting a PR for this?

I'm not that familiar with how to make new configuration argument and also how the config args are read (there's some middleware for args IIRC, but not sure how to use that). But I can give it a go, with some help.

The above given change should be roughly all that's needed, sans the config reading.

@nb-programmer nb-programmer added the enhancement Some improvement that isn't a feature label Apr 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Some improvement that isn't a feature
Projects
None yet
Development

No branches or pull requests

1 participant