Identity & Access Management
Қысқаша түйіндеме
IAM - бұл кімнің неге, қандай жағдайда және қалай бақыланатынын қамтамасыз ететін процестердің, саясаттардың және құралдардың жиынтығы. Мақсаттары: артық құқықтарды барынша азайту, шабуыл жасаудың бетін төмендету, онбординг пен аудитті жеделдету, талаптарға сәйкестігі (PCI DSS, GDPR және т.б.) және қол жеткізудің өлшенетін сенімділігі.
Негізгі ұғымдар
Сәйкестігі (Identity): адам (қызметкер, мердігер), сервис/қосымша, құрылғы.
Аутентификация (AuthN): «кімді» тексеру (пароль → MFA → құпиясыз схемалар FIDO2/passkeys).
Авторизация (AuthZ): «рұқсат етілген» шешім (RBAC/ABAC/ReBAC, саясат).
Есептік деректер (Credentials): парольдер, кілттер, белгілер, сертификаттар (mTLS).
Құпия менеджмент: KMS/HSM/Vault, ротациялар, қысқа TTL, динамикалық құпиялар.
Өмірлік цикл: Joiner-Mover-Leaver (JML) - құру, рөлдерді өзгерту, пікір.
IAM мақсатты сәулеті
Жазықтықтар мен рөлдер:- IdP (сәйкестендіру провайдері): SSO, MFA, каталог, федерация (OIDC/SAML), тәуекел саясаты.
- PDP/PEP: Decision/Enforcement - саясаттың қозғалтқышы (OPA/Cedar) + қолдану нүктелері (API-шлюздер, прокси, сервис-меш).
- Каталогтар/HR-жүйе: қызметкерлер мен рөлдер бойынша шындық көзі.
- Провижининг: Рұқсаттарды жасау/өзгерту/кері қайтару үшін SCIM/Automation.
- Аудит: орталықтандырылған логтар, UEBA, рөлдер мен қолжетімділіктер бойынша есептер.
- SSO (+ MFA) → токенді шығару (OIDC/JWT/SAML) → PEP токенді/контекстті тексереді → PDP саясат бойынша шешеді (рөлі/атрибуттары/тәуекелі) → қосымша рұқсат береді/беруден бас тартады.
Аутентификация: құпия сөздерден passkeys
Парольдер: тек құпия сөз менеджерлерімен, кем дегенде 12-14 таңбамен, «күнтізбе бойынша» ротациясыз, бірақ инцидент кезінде міндетті түрде.
Әдепкі MFA: TOTP/WebAuthn/Push; негізгі фактор ретінде SMS болдырмау.
Парольсіз кіру: критикалық домендер үшін FIDO2/passkeys.
Бейімделген AuthN: тәуекел сигналын (гео, ASN, құрылғы, аномалиялар) ескеріңіз → қосымша факторды талап ету/блоктау.
Авторизация: RBAC, ABAC, ReBAC
RBAC: функцияларға сәйкес келетін рөлдер (Support, Finance, DevOps). Қарапайым және түсінікті, бірақ «өсіп келеді».
ABAC: атрибуттар бойынша ережелер (бөлім, тәуекел деңгейі, уақыт, аймақ, ресурстар белгілері). Масштабтау.
ReBAC: «кім неге қатысты» қатынасы (жоба иелері, команда қатысушылары). Көпотенантты сценарийлер үшін ыңғайлы.
- RBAC (негізгі тор) + ABAC/ReBAC (контекст/шекара) біріктіру.
- JIT (Just-In-Time): сұрау/аппрув арқылы уақытша артықшылықтар беру, автоматты қайтарып алу.
- JEA (Just-Enough Access): операцияға ең аз жеткілікті құқықтар.
- PAM: сессия брокері, экран/команда жазбасы және қысқа мерзімді кредиттер беру арқылы оқшауланған «күшті» қолжетімділіктер (ДБ/бұлт әкімшіліктері).
Федерация және SSO
Хаттамалар: OIDC (JWT-токендер), SAML 2. 0 (XML assertions) - сыртқы провайдерлер/серіктестер үшін.
SSO: MFA-мен бірыңғай кіру нүктесі, фишингтің төмендеуі, орталықтандырылған шолу.
B2B/B2C: әріптестермен федерация, облыстарды шектеу, домендік саясат.
mTLS/m2m: қызметтер үшін қысқаша x.509 (SPIFFE/SVID) немесе OAuth2 Client Credentials пайдаланыңыз.
Өмірлік цикл (JML) және провижининг
Joiner: HR/каталогтан есептер мен негізгі рөлдердің автоматты SCIM провижинингі.
Mover: рөлдер атрибуттар (бөлімше, жоба, орналасу) бойынша автоматты түрде өзгереді.
Leaver: SSO-ны, кілттерді, токендерді, репозиторийлерге/бұлттарға/CI/CD қолжетімділікті дереу қайтарып алу.
Процестер: қол жеткізу өтінімдері (ITSM), SoD матрицасы (міндеттерді бөлу), мерзімді access review.
Құпиялар, кілттер және ротациялар
KMS/HSM: түбір/сыни кілттерді сақтаңыз, операциялар аудитін қосыңыз.
Vault/Secrets-менеджерлері: динамикалық кред (ДБ, бұлттар), TTL аяқталған кездегі авто-тексеру.
Ротациялар: OAuth токендері, JWT қолтаңба кілттері, қызмет парольдері - кесте бойынша және оқыс оқиғалар кезінде.
mTLS: қысқа сертификаттар (сағат/күн), автоматты қайта шығару.
Саясат және шешімдер қозғалтқышы
Декларативтілік: Git бағдарламасында саясатты сақтаңыз; CI (policy-tests) бағдарламасында тексеріңіз.
Контекст: уақыт/орналасу/ASN/тәуекел деңгейі/құрылғының жай-күйі (MDM/EDR).
rego package authz. payments default allow = false
allow {
input. user. role == "finance"
input. device. compliant == true input. action == "read"
input. resource. type == "report"
time. now_hh >= 8 time. now_hh <= 20
}
Мониторинг, SLO және аудит
Өлшемдері:- AuthN/AuthZ табыстылығы (%), p95 логин/шешім уақыты, MFA/парольсіз кіру үлесі.
- JIT/PAM эскалациясының саны, артықшылықтардың орташа ұзақтығы.
- Compliant-құрылғыларды жабу, қысқа мерзімдік құпиялардың үлесі.
- SSO/IdP қолжетімділігі ≥ 99. айына 95%.
- p95 AuthZ decision ≤ 50 мс.
- 100% есептен шығару offboarding кейін 15 минут ≤.
- Аудит және UEBA: орталықтандырылған өзгермейтін логтар (қолжетімділіктер, рөлдердің өзгеруі, сәтсіз кірулер, PDP шешімдері), мінез-құлық талдауы және аномалиялар бойынша алаңдаушылық.
IAM-дағы инцидент-респонс
Токендер/кілттердің компрометациясы: дереу кері қайтару, мәжбүрлі logout, қолтаңба кілттерін ротациялау, қысқа құпияларды re-issue.
Құқықтарды теріс пайдалану: Тіркелгіні тоқтату, JIT/JEA блоктау, көрші мәндер бойынша access review жүргізу.
IdP қол жетімді емес: офлайн режимдері (қысқа TTL токендерін уақытша кэш-валидациялау), қалпына келтірудің басым рәсімдері.
Фишинг: міндетті MFA, сессияларды тексеру тәуекелі, пайдаланушыларға хабарлау, оқыту.
Бұлттар және Kubernetes (паттерндер)
Public Cloud IAM: least privilege қағидатымен ұлттық рөлдерді пайдаланыңыз; «мәңгілік» кілттердің орнына - OIDC-федерациясымен бұлтқа жұмыс жүктемесі (IRSA/Workload Identity).
Kubernetes: RBAC неймспейстер/рөлдер бойынша, шектеу 'cluster-admin'; құпиялар - сыртқы менеджерлер арқылы; сервис-меш + L7-саясатқа арналған OPA; Admission-контроллерлер (қол қойылған бейнелер, тыйым салу «: latest»).
API-шлюздер: JWT/mTLS тексеру, жылдамдықты шектеу, сезімтал эндпоинттер үшін сұрау қолтаңбасы (HMAC).
iGaming/финтехке арналған практика
Қол жеткізу домендері: төлемдер, антифрод, PII, контент-провайдерлер - рөлдермен және желілік сегменттермен оқшаулау.
SoD: қайшылықты рөлдерді біріктіруге тыйым салу (мысалы, промо жасау + төлемдерді бекіту).
PAM және JIT: PSP/банктерге және прод-ДБ-ға қол жеткізу үшін - тек сессия брокері арқылы, жазбасы және авто-пікірі бар.
Комплаенс: PCI DSS - MFA, ең аз артықшылықтар, CHD аймағының сегментациясы; GDPR - деректерді барынша азайту қағидаты және PII-ге қол жеткізудің нүктелік логтары.
Серіктестер мен контент провайдерлері: федерация және per-tenant саясаты; қысқа мерзімді токендер және IP/ASN allow-list.
Типтік қателер
«Мәңгілік» кілттер мен токендер: ротация жоқ және TTL → ағып кету қаупі жоғары.
Қолмен offboarding: құқықтарды қайтару кідірістері → «Арбақ» қатынау.
Рөлдер-монолиттер: композиция мен атрибуттардың орнына бір «супер-роль».
MFA тек әкімшіде: MFA барлық кірістер мен күрделі операциялар үшін болуы тиіс.
«Ешқайда» логтары: орталықтандыру жоқ және UEBA → оқыс оқиғаларды кеш анықтау.
IAM енгізудің жол картасы
1. Пайдаланушыларды/сервистерді/ресурстарды түгендеу; деректер және сезімталдық картасы.
2. Барлығы үшін SSO + MFA, phishing-resistant факторларды қосыңыз.
3. Рөлдер моделі: контекстке арналған базалық RBAC + атрибуттар (ABAC); SoD матрицасы.
4. Провижининг SCIM: HR/каталогтан авторлық құрылым/өзгерту/құқықтарды қайтарып алу; ITSM-дегі өтінімдер мен апрувтар.
5. PAM және JIT/JEA: артықшылықты қол жеткізу үшін; сессия жазбасы, қысқа TTL.
6. Құпия-менеджмент: статикалық кілттерден бас тарту; динамикалық құпиялар, ротациялар, mTLS қысқаша сертификаттармен.
7. Git + CI саясаттары: ережелер тестілері, өзгерістерді бақылау, саясатты канареялық өрістету.
8. Байқау және SLO: AuthN/AuthZ дашбордтар, алерталар, тұрақты access review.
Артефакттар мысалдары
AWS IAM Policy (S3 есептерін оқу үшін ең аз)
json
{
"Version": "2012-10-17",
"Statement": [{
"Sid": "ReadOnlyReports",
"Effect": "Allow",
"Action": ["s3:GetObject","s3:ListBucket"],
"Resource": [
"arn:aws:s3:::reports-bucket",
"arn:aws:s3:::reports-bucket/"
],
"Condition": {
"IpAddress": { "aws:SourceIp": "203. 0. 113. 0/24" }
}
}]
}
Kubernetes RBAC (namespace-scoped жасаушы)
yaml apiVersion: rbac. authorization. k8s. io/v1 kind: Role metadata:
name: dev-read-write namespace: app-prod rules:
- apiGroups: ["","apps"]
resources: ["pods","deployments","services","configmaps"]
verbs: ["get","list","watch","create","update","patch","delete"]
apiVersion: rbac. authorization. k8s. io/v1 kind: RoleBinding metadata:
name: dev-bind namespace: app-prod subjects:
- kind: User name: alice@example. com roleRef:
kind: Role name: dev-read-write apiGroup: rbac. authorization. k8s. io
OIDC: ABAC үшін бекітулер (мысал)
json
{
"sub": "d81f0b5c-...",
"email": "bob@example. com",
"dept": "finance",
"role": "analyst",
"device_compliant": true,
"tenant": "casino-eu"
}
Саясат ресурспен сәйкес келетін 'device _ compliant = true' және 'tenant' талап ете алады.
Бақылау тізімі (check-list)
- SSO барлық бағдарламалар үшін қосылған; Әдепкі MFA, passkeys басымдыққа ие.
- RBAC анықталған; ABAC/ReBAC контексті қосады; іске асырылды JIT/JEA.
- PAM артықшылықты кіруді қорғайды; сессияларды жазу жүргізіледі.
- HR-дан SCIM-провижининг; offboarding толығымен автоматтандырылған.
- Динамикалық құпиялар, қысқа TTL; автоматтандырылған.
- Саясаткерлер Git-те нұсқаланады, CI-де тестіленеді; канареялық орналасулар бар.
- AuthN/AuthZ бойынша дашбордтар мен SLO; орталықтандырылған логтар және UEBA.
- Мерзімді access review және SoD тексерулері; комплаенс үшін есептер.
FAQ
ReBAC бәріне қажет пе?
Жоқ. Қарапайым орталар үшін RBAC + ABAC жеткілікті. ReBAC ресурстарды иеленудің күрделі иерархиясы мен көп тененттілік кезінде пайдалы.
Жергілікті есептерді қалдыруға бола ма?
Тек break-glass және офлайн-сценарийлер үшін, қатаң шектеулермен және мерзімді тексерумен.
«Рөлдердің жарылысын» қалай қысқартуға болады?
Ресурстардың гранулярлығын көтеру, АВАС/шаблондарды пайдалану, ревьді автоматтандыру және пайдаланылмайтын рөлдерден бас тарту.
Жиынтығы
Жетілген IAM сәулеті - бұл SSO + MFA, ең аз қажетті құқықтар, автоматтандырылған JML, орталықтандырылған саясат және бақылау. RBAC-ді атрибуттық және реляциялық модельдермен біріктіру, JIT/JEA және PAM-ді қолдану, сондай-ақ провижинингті және құпияларды ротациялауды автоматтандыру арқылы сіз қауіпсіздік пен бизнестің талаптарына сәйкес келетін басқарылатын, тексерілетін және масштабталатын қолжетімділікке ие боласыз.