Commit Graph

398 Commits

Author SHA1 Message Date
emelinda
a60b171bea security-audit: IsMap guards in transform/audit delete_key statements
Some events (e.g. deletecollection) carry requestObject as a slice, not a map:
indexing it with "metadata" failed with "unable to resolve an integer index in
slice" and spammed the collector log (error_mode: ignore — events were not lost).
IsMap chains rely on OTTL short-circuit `and` evaluation (verified against
v0.121 sources).
2026-11-07 16:23:46 +03:00
emelinda
cf2689aea0 security-audit: fix filter/audit config key — log_record (singular), filterprocessor 0.121
The processor rejected "log_records": LogFilters.LogConditions is mapstructure
"log_record" in v0.121 (collector failed to start: failed to get config).
2026-11-07 16:00:24 +03:00
emelinda
0b8318f547 security-audit: drop flux-system read polling from apiserver audit pipeline
filter/audit in audit-collector drops get/list/watch events from
system:serviceaccount:flux-system:* (helm/kustomize/source controllers polling
fluxcd resources every few seconds — the bulk of the topic volume). GitOps
mutations are kept: they are the actual trail of cluster changes.
2026-11-07 15:45:37 +03:00
emelinda
1960ef495c security-audit: add audit-processor — ship apiserver audit from Kafka to MinIO (Parquet)
base/processor-*.yaml: Deployment (1 replica, image k8s-audit-processor:394b6f9d),
ConfigMap with config.yaml, ServiceAccount, NetworkPolicy (DNS, kafka:9092,
external MinIO 10.133.0.245:9000). Contour-specific values for uralkal are set
via env patch in the overlay (K8S_AUDIT_*), same pattern as the collectors.
Credentials reuse the static Secrets (security-audit-kafka, kafka-ca,
security-audit-minio) via a projected volume at /vault/secrets.

app.env=stand: the contour's external MinIO has no TLS, so strict validation
(minio.secure) would fail. log.s3_echo=true is temporary for flow verification
(per security req. 20: disable after debugging).
2026-11-07 14:54:08 +03:00
emelinda
9cb62ea9f0 security-audit: nil-guards в transform/audit — удаление managedFields/annotations
У части событий requestObject есть, а metadata/annotations в нём nil —
statement падал с "expected pcommon.Map but got nil" и засорял лог
(error_mode: ignore, события не терялись).
2026-11-06 18:03:30 +03:00
emelinda
d4bbc5fd14 security-audit: отложить события Zitadel — отключить Job idp-actions-bootstrap
PAT machine user'а security-audit-bootstrap не заведён (ни Vault-роль, ни статический
Secret), Job не сможет настроить Target/Execution'ы. Пайплайн logs/idp в access-collector
оставлен и инертен: без Target'а Zitadel ничего не отправляет. Обратное включение:
раскомментировать idp-actions-bootstrap в base/kustomization.yaml и его патч в оверлее
uralkal, добавить ключ zitadel_pat в Secret security-audit-kafka.
2026-11-06 17:34:05 +03:00
emelinda
3162679524 security-audit: креды Kafka и PAT Zitadel — из статических Secret'ов вместо Vault Agent
В контуре uralkal роли Vault (security-audit, security-audit-bootstrap) не заведены.
Коллекторы и Job idp-actions-bootstrap монтируют Secret'ы namespace (security-audit-kafka,
kafka-ca) projected volume'ом в /vault/secrets под теми же именами файлов — конфиг
коллекторов (${file:...}, ca_file) не меняется. Из NetworkPolicy убран egress в Vault,
из оверлея uralkal — dependsOn на HelmRelease vault.
2026-11-06 17:22:20 +03:00
ivan
4dac264303 uralkal: camunda keycloak — debug-логи org.keycloak.storage.ldap 2026-11-05 15:12:24 +05:00
ivan
0398df0901 uralkal: camunda keycloak — Secret keycloak-keytab из sarex.keytab через secretGenerator 2026-11-05 12:50:53 +05:00
ivan
6855db88b8 uralkal: camunda keycloak — доверие корневому CA BER-CA1 для LDAPS к AD
ConfigMap uralkali-ca с PEM BER-CA1 монтируется в /opt/uralkali-ca,
KC_TRUSTSTORE_PATHS=/opt/uralkali-ca/ber-ca1.crt добавляет его в Truststore SPI
Keycloak 25 поверх системных корней, без пересборки образа.
2026-11-05 11:39:25 +05:00
ivan
b456e8a5da uralkal: zitadel — доверие корневому CA BER-CA1 для LDAPS к AD
ConfigMap uralkali-ca с PEM BER-CA1 (DC=local,DC=uralkali,DC=com) монтируется
в /etc/ssl/uralkali, SSL_CERT_DIR=/etc/ssl/uralkali:/etc/ssl/certs. Образ на
scratch без пересборки: Go берёт доп. корни из SSL_CERT_DIR. Чинит
"x509: certificate signed by unknown authority" при входе через AD.
2026-11-05 11:18:07 +05:00
emelinda
49040e0da8 Enable plain client manifest for istio-mtls-check 2026-11-05 09:01:41 +03:00
emelinda
919253808b add istio-mtls-check deployments 2026-11-05 08:50:25 +03:00
emelinda
ad28069436 Add Istio mTLS check manifests to uralkal cluster 2026-11-05 03:23:43 +03:00
emelinda
67985010ce Fix uralkal Istio EnvoyFilter patch target for HTTP routes 2026-11-05 02:26:55 +03:00
emelinda
fa989aafdc Add istio-config-contour chart and enforce HTTPS/TLS/HSTS for uralkal ingress 2026-11-04 23:38:14 +03:00
ivan
e6392cbbfe uralkal: camunda keycloak — keytab из Secret keycloak-keytab и krb5.conf для LOCAL.URALKALI.COM 2026-11-03 17:09:50 +05:00
ivan
81bf9d17d1 uralkal: s3.sarex.local.uralkali.com напрямую в MinIO 10.133.0.245:9000 через ServiceEntry 2026-11-03 14:36:05 +05:00
ivan
7cacd5a03f uralkal: kafka-scram-users — automountServiceAccountToken для Vault injector 2026-11-02 15:19:13 +05:00
ivan
654803c2af uralkal: Job заводит SCRAM-пользователей Kafka из Vault kafka/apps/{pm,issues,flows}
Логин и пароль берутся из тех же путей Vault, что читают pm/message-hub и
issues/flows; пароль администратора — inter_broker_user из kafka/bootstrap
(роль Vault kafka, SA kafka-kafka-contour). После создания проверяется вход
каждого пользователя по SASL_SSL на 9092, пароли в лог не пишутся.
2026-11-02 15:11:03 +05:00
emelinda
30f1d32fc5 Add Vault audit logging integration for uralkal namespace with sidecars for file rotation, OTLP export, and Kafka integration 2026-11-02 09:22:20 +03:00
emelinda
2aaa45bf3c Add Vault audit logging integration for uralkal namespace with sidecars for file rotation, OTLP export, and Kafka integration 2026-11-02 02:24:00 +03:00
emelinda
2f5e37f598 **Add Zitadel events ingestion pipeline with AuthorizationPolicy and initial Job configuration for security-audit namespace** 2026-11-02 00:57:05 +03:00
emelinda
ae1a683ada **Add HelmRelease access-collector for processing ingress-gateway access logs in security-audit namespace with Kafka and Vault integration** 2026-11-02 00:33:20 +03:00
emelinda
ad7050ca7d Add audit collector HelmRelease for security-audit namespace to process and export kube-apiserver audit logs, including Kafka and Vault integration 2026-11-01 22:02:54 +03:00
e4e5e06aec ++ camunda legacy wait 2026-10-31 17:45:29 +03:00
9f2c6932d7 ++ camunda timeout 30m 2026-10-31 15:21:43 +03:00
ivan
9f4801af68 ++ contour zitadel: sarex-installer machine user for zitadel-setup
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 15:32:27 +05:00
1613172dd6 ++ contour kafka client sasl plaintext 2026-10-28 15:47:31 +03:00
b7c36a5348 ++ stand routing layer 2026-10-28 15:31:36 +03:00
0037411aae ++ stand camunda via vault 2026-10-28 15:18:25 +03:00
c23b51e2a5 infra: route GoAlert through VK Istio 2026-10-28 14:39:19 +03:00
1c3525fc1b ++ stand platform layer zitadel 2026-10-28 11:15:41 +03:00
a3fa7ba4c0 ++ stand data layer 2026-10-28 10:37:30 +03:00
4a46bb6626 ++ contour cert-manager images 2026-10-28 10:33:19 +03:00
34cbe7c79e ++ stand mesh layer 2026-10-28 10:33:19 +03:00
f5a217e793 ++ stand vault layer 2026-10-27 22:48:56 +03:00
b6f164f85e ++ outline db secret from tf 2026-10-27 13:37:58 +03:00
5e10d54d67 ++ outline pg sslmode 2026-10-27 13:37:58 +03:00
0c696d3a3e ++ valkey image override 2026-10-27 12:31:57 +03:00
Pavel Ershov
385abf1092
Outline в vk-infra
- infrastructure/outline/vk-infra: namespace, HelmRelease outline-valkey (valkey 0.1.0, standalone) и outline (outline 0.1.0, Outline 1.12.0)
- clusters/vk-infra: подключение outline/vk-infra
- istio-config/vk-infra: Certificate, Gateway и VirtualService для wiki.sarex.space

Секреты outline и outline-valkey созданы в кластере вручную.
2026-10-26 20:49:39 +03:00
af112cfffe ++ srx ui kit pages 2026-10-26 14:42:34 +03:00
36b63ef189 ++ vk lb new fip 2026-10-26 10:56:02 +03:00
ivan
10d962dce5 ++ 2026-10-24 12:30:16 +05:00
ivan
54c036b23e premises in ugmk, inspections VS name fix, remarks contour image, debug pod sleep
premises: d8-ugmk-prod overlay (ugmk Kafka CA mounted, prod-sized requests
dropped), wired into the cluster, /premises/api/ routed on sarex.uralmine.com.
Terraform side is infra/terraform 856ab54.

istio-config d8-ugmk-prod, vad, uralkal: inspections-api reused the name
flows-api-virt-service, so two VirtualServices collided and one of
/flows/api/ and /inspections/api/ was lost. It is now
inspections-api-virt-service.

remarks base frontend image -> remarks-frontend:contour_013c5091.
psql-tools-debug in uralkal sleeps forever so it can be exec'd into.
2026-10-23 16:07:19 +05:00
3a62bd4792 ++ spicedb vk prod 2026-10-22 14:32:24 +03:00
ivan
7fec316147 ++ 2026-10-22 15:42:52 +05:00
de5992a73a ++ vk business domains 2026-10-22 10:53:27 +03:00
04b6381d95 ++ dns01 cloudflare issuer 2026-10-21 18:21:01 +03:00
957dc3aed1 ++ es processing via postrenderer 2026-10-21 17:29:09 +03:00