В контуре 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.
DaemonSet audit-collector на control-plane (журнал kube-apiserver → security.k8s-audit),
Deployment access-collector (OTLP :4317 — журнал доступа ingress-шлюза → security.mesh-access,
webhookevent :8088 — события Zitadel Actions v2 → security.idp-events, otlp :4319 — журнал
аудита Vault → security.vault-audit), Job idp-actions-bootstrap (Target + Execution'ы в Zitadel),
NetworkPolicy/AuthorizationPolicy, EnvoyFilter strip-audit-headers и Telemetry шлюза
на провайдер audit-access (уже раскатан в istio-pilot/uralkal).
Предусловия выполнены вне репозитория: аудит apiserver на мастерах (INFRA-3057),
топики security.* и SCRAM-пользователь в Kafka, бакет security-audit в MinIO,
секреты и роли Vault (terraform, vault-platform-secrets).
Оверлеи убраны из clusters/uralkal/kustomization.yaml, манифесты
apps/postgres-tls-test/ и infrastructure/istio-mtls-check/ сохранены
для возможного повторного подключения.
ConfigMap uralkali-ca с PEM BER-CA1 монтируется в /opt/uralkali-ca,
KC_TRUSTSTORE_PATHS=/opt/uralkali-ca/ber-ca1.crt добавляет его в Truststore SPI
Keycloak 25 поверх системных корней, без пересборки образа.
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.
Второй ключ deployment в патче отбрасывался, и args из оверлея не применялись:
/vault/secrets/pm-kafka инжектился, но не source-ился, pm ходил в Kafka с
дефолтными user/password. makemigrations из оверлея не включён.
Логин и пароль берутся из тех же путей Vault, что читают pm/message-hub и
issues/flows; пароль администратора — inter_broker_user из kafka/bootstrap
(роль Vault kafka, SA kafka-kafka-contour). После создания проверяется вход
каждого пользователя по SASL_SSL на 9092, пароли в лог не пишутся.
Образ contour/postgresql — официальный postgres с обёрткой contour, bitnami-переменные
TLS и extended-конфиг он игнорирует: ssl, сертификат, ssl_min_protocol_version и
hba_file передаются через -c; readOnlyRootFilesystem: false и пробы pg_isready как у
infrastructure/postgresql/uralkal.
ns postgres-tls-test: postgresql-contour pg-tls с tls.autoGenerated,
ssl_min_protocol_version TLSv1.2, pg_hba только hostssl (local для
администрирования); notes-tls на образе notes-backend с
PG_SSL_MODE/PGSSLMODE=verify-full и CA из pg-tls-crt.
regcred в ns создаётся вручную.
driftDetection.mode: enabled патчем в clusters/uralkal/kustomization.yaml,
base и другие контуры не затронуты. Исключены webhooks в
Mutating/ValidatingWebhookConfiguration (caBundle пишут vault-injector и
istiod) и /spec/replicas Deployment у istiod (HPA istio-system/istiod).
Kustomization flux-system уже prune: true, interval: 10m.