From abc0f9803429224a844677a3e285ecef66d233d6 Mon Sep 17 00:00:00 2001 From: migatu Date: Tue, 4 Aug 2026 17:08:39 +0200 Subject: [PATCH] sec(astrololo): pody bez tokenu konta serwisowego (LOG-33) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wszystkie cztery usługi biegły na koncie `default` z AUTOMATYCZNIE montowanym tokenem API Kubernetesa. Żadna z nich nie rozmawia z API klastra — sekrety dostają przez `secretKeyRef`, który wstrzykuje kubelet, nie pod. Token był więc zbędny, a leżał w każdym kontenerze jako gotowy punkt wyjścia do klastra dla kogoś, kto przejmie proces (np. przez lukę w zależności). `automountServiceAccountToken: false` w szablonie poda data/logic/presentation/ render. Zweryfikowane `kubectl kustomize` — pole trafia do `.spec.template.spec`, nie do specu Deploymentu (tam byłoby ciche i bez efektu). Zero wpływu na działanie: nic w kodzie nie woła API Kubernetesa. Co-Authored-By: Claude Opus 4.8 --- astrololo/data.yaml | 4 ++++ astrololo/logic.yaml | 4 ++++ astrololo/presentation.yaml | 4 ++++ astrololo/render.yaml | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/astrololo/data.yaml b/astrololo/data.yaml index a33a80a..f6556a5 100644 --- a/astrololo/data.yaml +++ b/astrololo/data.yaml @@ -9,6 +9,10 @@ spec: template: metadata: { labels: { app: data } } spec: + # LOG-33: pody nie rozmawiają z API Kubernetesa, więc token konta + # serwisowego jest im niepotrzebny — a zamontowany byłby gotowym + # punktem wyjścia do klastra dla kogoś, kto przejmie kontener. + automountServiceAccountToken: false imagePullSecrets: [{ name: gitea-registry }] containers: - name: data diff --git a/astrololo/logic.yaml b/astrololo/logic.yaml index d575aa4..7e22a5e 100644 --- a/astrololo/logic.yaml +++ b/astrololo/logic.yaml @@ -9,6 +9,10 @@ spec: template: metadata: { labels: { app: logic } } spec: + # LOG-33: pody nie rozmawiają z API Kubernetesa, więc token konta + # serwisowego jest im niepotrzebny — a zamontowany byłby gotowym + # punktem wyjścia do klastra dla kogoś, kto przejmie kontener. + automountServiceAccountToken: false imagePullSecrets: [{ name: gitea-registry }] containers: - name: logic diff --git a/astrololo/presentation.yaml b/astrololo/presentation.yaml index ad8cc51..6d1df63 100644 --- a/astrololo/presentation.yaml +++ b/astrololo/presentation.yaml @@ -9,6 +9,10 @@ spec: template: metadata: { labels: { app: presentation } } spec: + # LOG-33: pody nie rozmawiają z API Kubernetesa, więc token konta + # serwisowego jest im niepotrzebny — a zamontowany byłby gotowym + # punktem wyjścia do klastra dla kogoś, kto przejmie kontener. + automountServiceAccountToken: false imagePullSecrets: [{ name: gitea-registry }] containers: - name: presentation diff --git a/astrololo/render.yaml b/astrololo/render.yaml index a007bb2..392597f 100644 --- a/astrololo/render.yaml +++ b/astrololo/render.yaml @@ -19,6 +19,10 @@ spec: template: metadata: { labels: { app: render } } spec: + # LOG-33: pody nie rozmawiają z API Kubernetesa, więc token konta + # serwisowego jest im niepotrzebny — a zamontowany byłby gotowym + # punktem wyjścia do klastra dla kogoś, kto przejmie kontener. + automountServiceAccountToken: false imagePullSecrets: [{ name: gitea-registry }] containers: - name: render -- 2.52.0