Allow configuring login cookie with an expiry duration
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 45/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- typescript
- Domínio
- authentication
Direção de pesquisa
Comece em src/node/http.ts por volta da linha 328 e, em seguida, rastreie como os argumentos de configuração são definidos e lidos. Adicione uma configuração opcional de expiração para o cookie de login, preservando o comportamento de cookie de sessão quando ela estiver ausente ou for zero. Confirme que a duração configurada mantém o cookie de login após o fechamento do navegador.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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.
- Linguagem predominante
- TypeScript
- Estrelas
- 79.4k
- Forks
- 6.9k
- Merge médio
- 2d 13h
- PRs com merge (30d)
- 39
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de coder/code-server
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 92/100
coder/code-server#8017 · 2 comentários ·
-
Bump proxy-addr to 2.0.8 Abertasecurity
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
coder/code-server#8013 · 4 comentários ·
-
enhancement
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
coder/code-server#7976 · 2 comentários ·
-
enhancement
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
coder/code-server#7962 · 3 comentários ·
-
bug needs-investigation
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
coder/code-server#7955 · 1 comentário ·
Todas as issues de coder/code-server
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
vercel-labs/just-bash#464 ·
-
looksLikeSlug() is ASCII-only, so non-Latin entity slugs (e.g. Korean) skip exact match and collapse Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
TanStack/tanstack.com#1293 ·