🤖 CoderWorkspaceClaim Share mode: claim reasons reveal facts about named Coder users
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- go, kubernetes
- Área
- authorization, security
Línea de trabajo
Start with the claim reasons ShareUserNotFound and ShareUserNotEligible and the messages that claim status shows for them, then trace where the operator sets them. Decide between the two options in the issue: a single generic refusal with details moved to Events or the operator log, or keeping the reasons and documenting the exposure in the pool how-to. The maintainers must choose first, since the work depends on that decision.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Problem
A Share claim (#446) shows why its user cannot get the share. The reasons ShareUserNotFound and ShareUserNotEligible and their messages tell the claimant whether a named Coder user exists, whether the user is active, and whether the user is a member of the template's organization and of a group in the owner's shareGroupIDs. So anyone who can create and read claims in a namespace with a Share pool can learn these facts about Coder users, even without access to Coder's user directory.
Found by the Codex security review of #446 (round 4, P3): https://github.com/coder/coder-k8s/pull/446#discussion_r4433728850
Impact
Only principals that the namespace's RBAC lets create and read claims see the reasons, and only for the users they name. Share mode is an admin opt-in per owner. No data loss. Plan 6.4 of #153 defines these reasons on purpose so that a claimant can see why a claim waits, and the refusal names a group that Coder would not let the operator read, so that an admin can fix the pool.
Options
- Give the claim one generic refusal reason, and keep the details where only admins see them (for example Events in the operator's namespace, or the operator log).
- Keep the detailed reasons and add a docs note in the pool how-to: claim status shows whether a named Coder user exists, is active, and is in the organization and a listed group, so grant claim create and read only to people who can know that.
Refs #153.
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: xhigh
- Lenguaje dominante
- Go
- Estrellas
- 5
- Forks
- 3
- Merge medio
- 1 h 50 min
- PR fusionados (30 d)
- 160
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de coder/coder-k8s
-
CoderWorkspacePool: count bound and used members only when their owner matches the pool's ownerAbierto
Dificultad 3/5 Medio día Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 Medio día Aptitud para principiantes 45/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 8/100
Los mantenedores suelen responder en 1 día
Todos los issues de coder/coder-k8s
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
prime-radiant-inc/evener#5901 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 69/100
-
kind/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
kyma-project/serverless#2769 ·
Los mantenedores suelen responder en 1 día
-
Update the mise toolsAbiertoready-for-agent
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
hexlet-basics/hexlet-basics#962 ·
Los mantenedores suelen responder en 1 día
-
imapproxy closeForMaintenance grace timer calls clientConn.Close() before closeMaintenanceTransportPosiblemente ocupada @dejanstrbac la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día