GH GambleHub

Рольове делегування та доступи

(Розділ: Операції та Управління)

1) Навіщо рольове делегування

Мета - дати кожному учаснику (співробітнику, партнеру, сервісу) рівно стільки прав, скільки потрібно і рівно на стільки часу, скільки необхідно, при повній трассируемости дій. Це знижує ризики витоків і зловживань, прискорює онбординг і прохід аудитів.

2) Модель доступу: рівні та домени

Домени доступу: люди (консоль/панелі), сервіси (машинні токени), дані (таблиці/об'єкти), інфраструктура (хмара/K8s), контрагенти (зовнішні інтеграції), регіони/тенанти.
Рівні довіри: публічний → внутрішній → захищений (PII/фінанси) → особливо критичний (ключі/виплати).
Зони операцій: prod / staging / sandbox; правило «з «нижче» в «вище» - тільки через затверджені pipeline'и».

3) Моделі авторизації

RBAC: ролі прив'язані до завдань («Контент-редактор», «Оператор виплат»). Простий старт, легко перевіряти.
ABAC: політики щодо атрибутів суб'єкта/ресурсу/контексту (регіон, тенант, зміна, пристрій, ризик-скоринг).
ReBAC (relationship-based): права випливають зі зв'язків (власник проекту, член команди).
Гібрид: RBAC для базової матриці, ABAC для контекстних обмежень, ReBAC для володіння.

💡 Практика: зберігайте граф прав (хто → що → навіщо), щоб виявляти шляхи ескалації і «супер-вузли» ризику.

4) Мінімально необхідний доступ (Least Privilege)

Старт - мінімальні ролі-за-замовчуванням (read-only, без PII).
Підвищення - тільки через заявку з обґрунтуванням, терміном і власником.
Ліміт часу (TTL): права «тануть» автоматично; продовження - усвідомлено.
Контекстні гвард-рейли: регіон/тенант, години роботи, пристрій, гео.

5) Поділ обов'язків (SoD)

Матриця SoD виключає небезпечні комбінації:
  • «Заводить ліміти» ≠ «затверджує ліміти».
  • «Готує виплату» ≠ «підписує виплату».
  • «Пише код» ≠ «релізує в prod».
  • «Адмін БД» ≠ «читає PII в аналітиці».
  • Реалізуйте SoD в політиках і в самих процесах (двопідпис, M-of-N).

6) JML-процеси (Joiner/Mover/Leaver)

Joiner: авто-призначення базових ролей за посадою/командою/регіоном, чек-лист доступів за 24ч.
Mover: перегляд ролей при зміні команди/проекту; автоматичне зняття «старих» прав.
Leaver: відгук сесій, ключів, токенів; перевипуск секретів, transfer володінь артефактами.

7) Тимчасові привілеї: JIT / PAM

Just-In-Time (JIT): підняття прав за заявкою на 15-240 хвилин з MFA та обґрунтуванням тікетом.
PAM (Privileged Access Management): проксі/вхід «під обліком-оболонкою», запис сесій, командний журнал.
Break-glass: аварійний доступ з миттєвим алертом, коротким TTL і обов'язковим пост-мортемом.

8) Ідентичності сервісів і ключі

Service Accounts: окремі для кожного сервісу і середовища, ніяких shared-секретів.
Workload Identity: прив'язка токенів до поду/виру/функції; короткоживучі креди.
Секрети: KMS/Vault, ротація, двоконтурне шифрування, заборона потрапляння в логи.
Ключі підписів/виплат: threshold/MPC, апаратні HSM, рознесення по доменах довіри.

9) SSO/MFA/SCIM і життєвий цикл акаунтів

SSO: IdP (SAML/OIDC), єдиний вхід, централізовані політики паролів/пристроїв.
MFA: обов'язкова для адмінів/фінансів/PII; переважно FIDO2.
SCIM: автоматичне створення/видалення/зміна акаунтів і груп.
Device Posture: умовний доступ за станом пристрою (шифрування диска, EDR, актуальні патчі).

10) Політики-як-код і верифікація

OPA/Authorization service: політики у вигляді коду (Rego/JSON), рев'ю через PR, тести.
Дрифт-контроль: регулярні порівняння «задекларовано vs фактично».
Pre-flight перевірки: «чи дозволить політика таку операцію?» - тестуйте кейси до релізу.

11) Доступ до даних

Класифікація: паблік/внутр/обмежений/PII/фінанси.
Тиск «мінімуму»: агрегати/маски замість «сирих» даних; запити PII - тільки через затверджені джоби.
Tokenization/DE-ID: заміна ідентифікаторів, аудит запитів.
Шари: прод → репліки → вітрини → агрегати; прямий доступ в прод-БД - тільки JIT/PAM.

12) Хмара, K8s, мережі

Cloud IAM: ролі per-аккаунт/проект; заборона «Admin» за замовчуванням; обмеження дій щодо тегів/папок.
Kubernetes: RBAC по неймспейсам, PSP/подібні політики без «privileged», образ-allowlist, секрети через CSI, сервісні акаунти per-под.
Мережа: Zero-Trust (mTLS, identity-aware), доступ до jump-host - тільки JIT, запис SSH-сесій.

13) Зовнішні партнери та інтеграції

Ізольовані тенанти/ключі, мінімум скоупів OAuth2, короткі TTL токенів.
Вебхуки: підпис (HMAC/EdDSA),'nonce + timestamp', вузьке вікно прийому.
Ротація ключів за розкладом, відгук при компрометації, статус-ендпоінти для «health».

14) Аудит, рецертифікація, звітність

Immutability: WORM-журнали, підписи релізів політик, Merkle-зрізи.
Рецертифікація: щоквартальна перевірка критичних ролей, щомісяця - адмін-прав.
Карантин прав: «невикористовувані 60 днів» → авто-зняття.
Evidence pack: вивантаження матриці ролей, SoD-спрацьовувань, JIT-заявок, запис PAM-сесій.

15) Метрики та SLO

TTG (Time-to-Grant): медіана видачі доступу за стандартною заявкою (мета ≤ 4ч).
Частка JIT-доступів серед «привілейованих» (мета ≥ 80%).
SoD-violations: 0 в prod, час усунення ≤ 24ч.
Орфанні права: % користувачів з надлишковими правами (мета → 0. 0x%).
Ротація секретів: середній вік секрету (мета ≤ 30 днів для чутливих).
Аудит-покриття: 100% привілейованих дій з артефактами (записи, квитанції).

16) Дашборди

Access Health: активні ролі, орфанні права, JIT vs постійні.
PAM & Sessions: число привілейованих сесій, тривалість, успішність MFA.
SoD & Incidents: статистика блокувань, причини, MTTR.
Secrets & Keys: вік, майбутня ротація, «червоні» ключі.
JML: SLA онбордингу/оффбордингу, прострочені заявки.
Audit Evidence: статус щоквартальної рецертифікації, completeness 100%.

17) Плейбуки інцидентів

Компрометація токена/ключа: негайний відгук, глобальний пошук використання, ротація залежностей, ретро-аудит за N днів.
Порушення SoD: блок операції, тимчасове відключення ролі, пост-мортем і зміна політики.
Неавторизований доступ до PII: ізоляція, повідомлення DPO, інвентаризація витоку, юридичні процедури.
Escalation abuse: заморожування JIT для суб'єкта/команди, аналіз заявок/обґрунтувань, коригування лімітів TTL.

18) Операційні практики

Чотири очі на видачу/зміну критичних прав.
Каталог ролей з описом завдань, ризиків і допустимих операцій.
Тестові оточення з анонімізованими даними та іншими ролями.
Policy dry-run: симуляція наслідків змін перед застосуванням.
GameDays за доступами: «втрата IdP», «відмова PAM», «витік секрету».

19) Чек-лист впровадження

  • Сформувати таксономію ролей і матрицю SoD за ключовими процесами.
  • Включити SSO + MFA для всіх, SCIM-потоки для JML.
  • Розгорнути PAM/JIT, налаштувати break-glass з алертами і коротким TTL.
  • Ввести політики-як-код (OPA), ревізії через PR і автотести.
  • Окремі сервіс-акаунти та workload-identity; заборона shared-секретів.
  • Vault/KMS, регулярна ротація секретів і ключів, заборона секретів в коді/логах.
  • Розділити середовища і регіони, закріпити правила крос-регіональних доступів.
  • Запустити дашборди і SLO, щомісячні звіти по рецертифікації.
  • Провести SoD-скан графа прав і усунути шляхи ескалації.
  • Регулярні навчання і пост-мортеми з action items.

20) FAQ

RBAC або ABAC?
RBAC - базовий шар читаності, ABAC - контекст і динаміка. Використовуйте гібрид.

Чи потрібен PAM, якщо є JIT?
Так: PAM дає запис сесій і керовані канали привілейованого доступу.

Як зменшити «залипання» прав?
TTL на ролі, авто-зняття невикористовуваних, щомісячна рецертифікація і SoD-алерти.

Що робити з зовнішніми підрядниками?
Виділені тенанти/групи, обмежені скоупи, короткі TTL, обов'язкові звіти і рецертифікація.

Резюме: Рольове делегування і доступи - це не «набір галочок», а життєвий цикл прав: мінімально необхідні ролі, SoD, JIT/PAM, політики-як-код, спостережуваність і регулярна рецертифікація. Такий контур дає швидку роботу командам і передбачувану безпеку для бізнесу і аудиту.

Contact

Зв’яжіться з нами

Звертайтеся з будь-яких питань або за підтримкою.Ми завжди готові допомогти!

Розпочати інтеграцію

Email — обов’язковий. Telegram або WhatsApp — за бажанням.

Ваше ім’я необов’язково
Email необов’язково
Тема необов’язково
Повідомлення необов’язково
Telegram необов’язково
@
Якщо ви вкажете Telegram — ми відповімо й там, додатково до Email.
WhatsApp необов’язково
Формат: +код країни та номер (наприклад, +380XXXXXXXXX).

Натискаючи кнопку, ви погоджуєтесь на обробку даних.