Operatsiyalar va Boshqaruv → Konfiguratsiyalar auditi
Konfiguratsiyalar auditi
1) Maqsad va qadriyat
Konfiguratsiyalar auditi o’zgarishlarning isbotlanadigan hisobdorligini va takrorlanishini ta’minlaydi: kim, qachon va nima o’zgargan; nima bilan asoslanganligi; qanday tekshirilganligi; qanday yugurish kerak. Bu hodisalar, sirlarning tarqalishi, komplayensga nomuvofiqlik va prodda «yashirin» tuzatishlar kiritish xavfini kamaytiradi.
Asosiy natijalar:- Moslamalar uchun yagona haqiqat manbai (SoT).
- Oʻzgarishlarni toʻliq izlash (end-to-end).
- Prognoz qilinadigan relizlar va tez qaytish.
- Tartibga solish talablari va xavfsizlik siyosatiga muvofiqligi.
2) Qamrov sohasi
Infratuzilma: Terraform/Helm/Ansible/K8s manifestlar, tarmoq ACL/WAF/CDN.
Amaliy konfigigurlar:’yaml/json/properties’fayllari, ficha-bayroqlar, limitlar/kvotalar.
Sirlar va kalitlar: vault/kms, sertifikatlar, tokenlar, parollar.
Maʼlumotlar payplaynlari: sxemalar, transformatsiyalar, ETL/oqim jadvallari.
Integratsiyalar: PSP/KYC/provayderlar, vebxuklar, retry/timeout siyosati.
Kuzatilganlik: alertlar, dashbordlar, SLO/SLA qoidalari.
3) Qonunning
Config as Data: deklarativ, versiyalashtiriladigan, sinovdan o’tkaziladigan artefaktlar.
Immutabellik va idempotentlik: koddan muhitning takrorlanuvchanligi.
Sxemalar va kontraktlar: qat’iy validatsiya (JSON-Schema/Protobuf), back/forward-muvofiqlik.
Qoʻlda tuzatishlarni minimallashtirish: faqat MR/PR orqali oʻzgartirish.
Vazifalar bo’linishi (SoD) va 4-eyes: muallif! = deploer; majburiy qichqiriq.
Atributiya i imzo: imzo kommitov/relizov, attestations artefaktov.
4) Audit arxitekturasi
1. SCM (Git) SoT sifatida: repozitoriyadagi barcha konfiklar,’main’shoxobchasi himoyalangan.
2. Registrlar:- Config Registry (konfiguratsiyalar, egalik, SLA, atrof-muhit katalogi),
- Schema Registry (konfiguratsiyalar/iventlar sxemalarining versiyalari),
- Policy Engine (OPA/Conftest) - tekshiruvlar to’plami.
- 3. CI/CD-geytlar: format/sxema → statik tekshirish → policy checks → sır-skan → dry-run → o’zgarishlar rejasi.
- 4. Delivery: GitOps (masalan, ArgoCD/Flux) drift detektori va audit-loglari bilan.
- 5. Evidence Store: audit artefaktlari ombori (reja, loglar, imzolar, bildlar, SBOM).
- 6. Harakat jurnali:’CREATE/APPROVE/APPLY/ROLLBACK/ACCESS’hodisalarining oʻzgarmas log (append-only).
5) Audit ma’lumotlari modeli (minimal)
Сущности: `ConfigItem(id, env, service, owner, schema_version, sensitivity)`
События: `change_id, actor, action, ts, diff_hash, reason, approvals[]`
Артефакты: `plan_url, test_report_url, policy_report, signature, release_tag`
Kommunikatsiyalar: RFC/ticet, PR, deploy (sha), reliz-yozuv, monitoring SLO.
6) O’zgartirish jarayoni (uzluksiz)
1. RFC/chipta → maqsad, xavf, backout.
2. PR/MR → linting, sxematik validatsiya, policy-tekshirish, sir-skan.
3. Reja/prevyu → dry-run/plan, diff resurslar, baholash qiymati/impakt.
4. Approve (4-eyes/SoD, yuqori xavf ostida CAB belgisi).
5. Deploy (oyna/taqvim bo’yicha) → GitOps qo’llaydi; drift-alerting yoqilgan.
6. Tekshirish → smoke/SLO-gardreylar, natijani tasdiqlash.
7. Dalillarni arxivlash → evidence store; konfiguratsiyalar lug’atini yangilash.
7) Siyosat va qoidalar (misollar)
SoD: PR yozuvchisi prodda saqlamaydi.
Vaqtni cheklash: «freeze» dan tashqari prod-deploy bilan taqiqlangan.
Scope: Sezgir kalitlarni oʻzgartirish uchun Security/Compliance dasturidan 2tadan foydalaning.
Sirlar: repoda saqlash taqiqlanadi; faqat vault-yo’l + kirish roliga havolalar.
Tarmoqlar: ingress s’0. 0. 0. 0/0’vaqtinchalik istisnosiz taqiqlangan va TTL.
Alertlar: CABsiz P1 darajasini pasaytirish taqiqlanadi.
8) Sirlarni nazorat qilish
Vault/KMS da saqlash, qisqa TTL, avtomatik rotatsiya.
Secret scanning in CI (kalitlar patterni, high-entropy).
Atrof-muhit/rollar bo’yicha sirlarni izolyatsiya qilish; eng kam zarur imtiyozlar.
«Simda» va «tinch holatda» shifrlash; sirlardan foydalanishning yopiq audit-loglari.
9) Asboblar (variativ)
Lint/Schema: `yamllint`, `jsonschema`, `ajv`, `cue`.
Policy: OPA/Conftest, Checkov/tfsec/kube-policies.
GitOps: ArgoCD/Flux (drift detection, audit, RBAC).
Secrets: HashiCorp Vault, cloud KMS, cert-menejerlar.
Skanerlar: trufflehog, gitleaks (sirlar); OPA/Regula (qoidalar).
Hisobot: DWH/BIdagi jurnallar eksporti, hodisa va change tizimi bilan bog’lanish.
10) Qoidalar va artefaktlar namunalari
JSON-Schema
json
{
"$schema": "http://json-schema. org/draft-07/schema#",
"title": "limits",
"type": "object",
"required": ["service", "region", "rate_limit_qps"],
"properties": {
"service": {"type":"string", "pattern":"^[a-z0-9-]+$"},
"region": {"type":"string", "enum":["eu","us","latam","apac"]},
"rate_limit_qps": {"type":"integer","minimum":1,"maximum":5000},
"timeouts_ms": {"type":"integer","minimum":50,"maximum":10000}
},
"additionalProperties": false
}
Conftest/OPA (rego) - taqiq’0. 0. 0. 0/0` в ingress
rego package policy. network
deny[msg] {
input. kind == "IngressRule"
input. cidr == "0. 0. 0. 0/0"
msg:= "Ingress 0. 0. 0. 0/0 is not allowed. Specify specific CIDRs or throw an exception with TTL"
}
Conftest/OPA - SoD (muallif saqlamaydi)
rego package policy. sod
deny[msg] {
input. env == "prod"
input. pr. author == input. pr. merger msg: = "SoD: PR author cannot hold in prod."
}
SQL (DWH) - bir oyda alertlarning tanqidiyligini kim kamaytirgan
sql
SELECT actor, COUNT() AS cnt
FROM audit_events
WHERE action = 'ALERT_SEVERITY_CHANGED'
AND old_value = 'P1' AND new_value IN ('P2','P3')
AND ts >= date_trunc('month', now())
GROUP BY 1
ORDER BY cnt DESC;
Git commit message namunasi (majburiy maydonlar)
feat(config/payments): raise PSP_B timeout to 800ms in EU
RFC: OPS-3421
Risk: Medium (PSP_B only, EU region)
Backout: revert PR + restore timeout=500ms
Tests: schema ok, conftest ok, e2e ok
11) Monitoring va alerting
Drift detekt: ≠ Git → P1/P2 signal + auto-remediation (reconcile).
High-risk change: tarmoqlarni/sirlarni/siyosatni o’zgartirish - -ops #security xabarnoma.
Missing evidence: rejasiz/imzosiz/hisobotsiz deploy - blok yoki alert.
Expired assets: sertifikatlar/kalitlarning amal qilish muddati → pro-aktiv alertlar.
12) Metrika va KPI
Audit Coverage% - sxemalar/siyosatlar/skanerlar ostidagi konfiguratsiyalar ulushi.
Drift MTTR - driftni bartaraf etishning o’rtacha vaqti.
Policy Compliance% - siyosatchilarning PRga oʻtishi.
Secrets Leak MTTR - sizib chiqishdan chaqirib olish/rotatsiyagacha.
Backout Rate - o’zgarishlarni qaytarish ulushi.
Mean Change Size - satrlar/resurslar bo’yicha o’rtacha diff (kamroq - yaxshiroq).
13) Hisobot va muvofiqlik
Audit izlari: 1-3 yil ≥ saqlash (talablar bo’yicha), o’zgarmas ombor.
Regulyator: ISO 27001/27701, SOX-ga o’xshash SoD, GDPR (PII), tarmoq talablari (iGaming: GGR/NGR hisob-kitoblari, limitlar, bonus-qoidalar o’zgarishini hisobga olish).
Oylik hisobotlar: top-o’zgarishlar, siyosatning buzilishi, dreyf, muddati tugaydigan sertifikatlar, rotatsiya maqomi.
14) Pleybuklar
A. Prodda dreyf aniqlandi
1. Ta’sirlangan xizmat uchun avto-deploni blokirovka qilish.
2. Joriy holat snapshotini olib tashlash.
3. Git bilan taqqoslash, «reconcile» yoki qaytarishni boshlash.
4. P2 hodisasini yaratish va drift manbasini koʻrsatish.
5. Himoyani yoqish: toʻgʻridan-toʻgʻri oʻzgarishlarni taqiqlash (PSP/ABAC), egalarini xabardor qilish.
B. PSP sertifikatining muddati o’tgan
1. Zaxira/PSP yoʻliga oʻtish, taymautlarni/retrajlarni pasaytirish.
2. Yangi sertifikatni PKI jarayoni orqali chiqarish va Git orqali yangilash.
3. Smoke-test, trafikni qaytarish, hodisani yopish, post-mortem o’tkazish.
S. Sir PRga tushdi
1. Kalit/tokenni qaytarib olish, rotatsiyani ishga tushirish.
2. Tarixni qayta yozish/artefaktni keshdan olib tashlash, RCAni rasmiylashtirish.
3. Qoidani secret-skanerga qoʻshish, buyruqni oʻrgatish.
15) Anti-patternlar
Izsiz va orqaga qaytmasdan qo’lda tuzatishlar
Sxemasiz va validatsiyasiz konfigi.
KMS/Vault boʻlmagan Git/CI oʻzgaruvchisidagi sirlar.
Monorepo «global super-huquq» ekvivalenti bilan.
«Kar» GitOps drift-alertlar va qo’llash jurnallarisiz.
Ulkan PR «hamma narsa birdaniga» - noaniq atributiya va yuqori xavf.
16) Chek varaqlari
Oldingi merge
- Sxema va linterlar o’tdi
- OPA/Conftest siyosati «yashil»
- Secret-scan - «toza»
- Reja/diff ilova qilingan, xavf baholangan, backout tayyor
- 2 oqim (prod) va SoD rioya qilingan
Deploy oldidan
- Chiqish oynasi va taqvim tekshirildi
- Drift-monitoring faol
- SLO gardreylar sozlangan, smoke testlar tayyor
Har oyda
- Kalit/sertifikatlarni jadval boʻyicha almashtirish
- Egalari va huquqlarini xatlovdan o’tkazish
- ORA/istisnolar qoidalarining revyusi (TTL)
- Hodisa-pleybuk testi (fire-drill)
17) Dizayn-maslahatlar
Oʻzgarishlarni kichik difflarga ajrating; bitta PR - bitta maqsad.
RFC/xavf/qaytish bilan PR/kommitlarning majburiy namunalari.
Dinamik konfiguratsiyalar uchun audit va rollback bilan «konfiguratsiya markazlari» dan foydalaning.
Sxemalarni versiya qiling; migratsiyasiz breaking taqiqlansin.
«Konfiguratsiyalar xaritasi» ni tasavvur qiling: nima, qayerda, kim boshqaradi.
18) O’zgarishlar va noxush hodisalarni boshqarish bilan integratsiya qilish
PR, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC, RFC.
Metriklarni (SLO/biznes) konfiguratsiya relizlariga avtomatik bogʻlash.
Eski bayroqlarni/istisnolarni olib tashlash vazifalarini avto- yaratish (TTL).
19) Jami
Konfiguratsiyalar auditi - bu «qog’oz hisoboti» emas, balki ishonchlilikning operatsion mexanizmi: konfiglar - ma’lumotlar, o’zgarishlar - nazorat qilinadigan va tekshiriladigan, sirlar - qulf ostida, butun tarix esa - shaffof va tekshirilishi mumkin. Barqaror, komplayent va oldindan aytib bo’ladigan platforma shunday qurilmoqda.