Narrow TemporalConnection RBAC: finalizer updates currently require main-resource writes
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Problem
Downstream deployers want to grant the controller minimum RBAC on TemporalConnection.
The chart already declares a /finalizers RBAC rule:
- apiGroups: [temporal.io]
resources: [temporalconnections/finalizers]
verbs: [update]
Ideally, this would move finalizer writes out of the main-resource permission path, while keeping writes scoped to /status and /finalizers.
In practice, the current DeprecatedTCReconciler mutates finalizers via main-object Update:
Because this is r.Update(ctx, &tc) on the main resource, Kubernetes RBAC checks update on temporalconnections, not only temporalconnections/finalizers. As a result, downstream charts must still grant main-resource update / patch, which broadens the controller's write surface on user-owned TemporalConnection.spec.
The same pattern appears to exist for the modern Connection kind in internal/controller/worker_controller.go (lines 760-774, lines 817-820), where temporal.io/delete-protection is added/removed via main-object Update.
Desired outcome
One of:
- Switch finalizer mutation in
DeprecatedTCReconcilerand the equivalentConnectionfinalizer paths to use the/finalizerssubresource explicitly, for example via controller-runtime's finalizers subresource support or an equivalent patch helper. - Or document in the chart README / RBAC comments that main-resource
update/patchontemporalconnectionsandconnectionsis required for finalizer management, so downstream RBAC reviews can treat it as an intentional requirement rather than over-broad permission. - Or land an interim doc note now and track a later code refactor.
Context
This came up during a Coinbase InfraSec review of a sandbox deployment of the controller. Sandbox deployment can proceed with documented broad RBAC, but production rollout requires a narrower or better-justified TemporalConnection write surface.
Related issues:
- #311 covers Secret-read RBAC reduction through file-based mTLS.
- #317 reports another impact of finalizer mutation via main-object
UpdateonTemporalWorkerDeploymentfield ownership.
This issue tracks the RBAC/security impact for TemporalConnection and Connection.
- Lenguaje dominante
- Go
- Estrellas
- 197
- Forks
- 79
- Merge medio
- 3 d 13 h
- PR fusionados (30 d)
- 25
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin 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 temporalio/temporal-worker-controller
-
[Feature Request] Helm chart: support topologySpreadConstraints on the controller DeploymentPosiblemente ocupada @akolacz la tomó hace 2 días. Abiertohelm
temporalio/temporal-worker-controller#658 · 1 reacción · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
[Bug] With a pinned build ID, the controller keeps updating the Deployment after a template changePosiblemente ocupada @D-Joey-G la tomó hace 1 día. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 58/100
temporalio/temporal-worker-controller#656 ·
Los mantenedores suelen responder en 1 día
-
rbac
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
temporalio/temporal-worker-controller#654 ·
Los mantenedores suelen responder en 1 día
-
Bug: v1.6's delete-protection finalizer is never removed from migrated TemporalWorkerDeployment/TemporalConnection, so they stay Terminating after the v1.7 migrationPosiblemente ocupada @niyomukiza-mechack la tomó hace 9 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 57/100
temporalio/temporal-worker-controller#644 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
AI agent skillsAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
temporalio/temporal-worker-controller#633 · 1 reacción ·
Los mantenedores suelen responder en 1 día
Todos los issues de temporalio/temporal-worker-controller
Issues similares
-
Update Go Version to >=1.27.3Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 60/100
-
✨ Propose the missing gate after three same-class findings instead of filing a fourthPosiblemente ocupada @hivecommons-hive la tomó hoy. Abiertoenhancement help wanted hive/claimed-by-scanner stage/040-covered-by-pr
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
hivecommons/hive#13428 · 3 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
🕷️ bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
sysadminsmedia/homebox#1805 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100