GH GambleHub

Ієрархія акаунтів і субкористувачів

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

1) Завдання і принципи

Ієрархія акаунтів визначає як організації і люди отримують доступ до ресурсів платформи і як розподіляються права, квоти, бюджети і відповідальність.

Принципи:
  • Separation of Concerns: структуру бізнесу відображаємо в дереві сутностей, а права - в політиках.
  • Least Privilege: за замовчуванням - мінімальні ролі, тимчасове підвищення через JIT.
  • Composability: ролі/квоти/ліміти успадковуються і перевизначаються.
  • Policy-as-Code: політики доступу, квоти, білінг - версіоновані артефакти.
  • Auditability: кожна дія корелюється з суб'єктом, контекстом і підписом.

2) Референс-модель ієрархії


Tenant
├─ Account - legally/operationally significant unit
│ ├─ Sub-account - Product/Region/Team/Project
│ │ ├─ Spaces/Projects/Environments: prod/stage/dev
│ │ └─ Roles and Groups (RBAC/ABAC) for People and Services
│ └─ Shares (limits, budgets, keys, integrations)
└─ Marketplace/Integrations/Affiliates (Outer Loops)
Призначення рівнів:
  • Tenant: власник договорів, білінгу високого рівня, глобальних політик і SSO.
  • Account: ізольована зона відповідальності (бренд/країна/БЕ); власні бюджети/ліміти.
  • Sub-account: робоча одиниця (продукт/потік/команда); свої ключі, квоти, ролі та аудит.

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

RBAC: роли Owner/Admin/Operator/Viewer/Billing/Compliance.
ABAC: атрибуты `region`, `tenant`, `account`, `environment`, `risk_score`, `device_posture`.
ReBAC: відносини «володіє/бере участь/рев'юїт» для проектів і секретів.

Практика: гібрид - RBAC як базис, що читається, ABAC для контекстних обмежень (регіон/час/пристрій), ReBAC для володіння ресурсами.

4) Делегування та успадкування

Делегування вниз: Tenant-адмін видає роль Account Admin, той - Sub-account Maintainer.
Перевизначення: квоти/ліміти/політики можуть посилюватися вниз по дереву.
Trust Boundaries: PII/фінанси - тільки в «зонах довіри» рівня Account; Sub-account бачить токени/агрегати.
Break-glass: аварійний доступ c коротким TTL, авто-алертом і пост-мортемом.

5) Квоти, бюджети, білінг

Квоти: запити/сек, подій/день, egress, сховище, ключі/вебхуки.
Бюджети: місячні капи та алерти (80/90/100%), авто-тротлінг/призупинення.
Білінг: інвойси на рівні Tenant/Account; розрізи по Sub-account і тегам (cost centers).
Transfer Pricing: внутрішні рознарядки між BU/регіонами.
Fair-use: публічні ліміти, rate-limits, захист від «бурстів».

6) Ідентичності та SSO/SCIM

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

7) Сервісні обліки та ключі

Service Account per Sub-account + Environment, без shared-секретів.
Workload Identity: короткоживучі токени, прив'язка до поду/функції.
KMS/Vault: ротація секретів, доступ за ролями, DSSE-підписи.
Вебхуки: підписи HMAC/EdDSA,'nonce + timestamp', TTL-вікно.

8) Модель даних (спрощено)

`tenant` `{id, name, sso, billing_profile, policies[]}`

`account` `{id, tenant_id, region, legal_entity, quotas{}, budgets{}, risk_tier}`

`sub_account` `{id, account_id, product, environment, keys[], webhooks[], limits{}}`

`role` `{id, scope: tenant|account|sub_account, permissions[]}`

`membership` `{subject_id, role_id, scope_ref, ttl, justification}`

`policy` `{type: rbac|abac|sod|quota, version, rules, signature}`

`audit_event` `{who, what, where, when, trace_id, signature}`

`quota_usage` `{scope_ref, metric, window, used, cap}`

9) Контракти API

Управління:
  • 'POST/tenants/{ id }/accounts'- створити Account (політики/квоти/білінг).
  • 'POST/accounts/{ id }/sub-accounts'- створити Sub-account (ключі, вебхуки).
  • 'PUT/roles/{ id}'- політика ролі;'POST/memberships'- призначити роль.
  • 'POST/access/elevate'- JIT-підвищення з TTL і обгрунтуванням.
  • 'GET/quotas/usage'- використання/кап;'POST/quotas/override'.
Аудит і статуси:
  • `GET /audit/events? scope =...'- підписані логи.
  • 'GET/status/access'- діючі ролі/TTL/ключі.
  • Вебхуки: `QuotaCapReached`, `RoleExpiring`, `KeyRotationDue`, `PolicyChanged`.

10) RACI (ключові області)

ОбластьResponsibleAccountableConsultedInformed
Модель ієрархії/політикPlatform IAMCTOSecurity, LegalВсі BU
Ролі та SoDSecurity/IAMCISOFinance, OpsАудит
Квоти/бюджетиFinOps/PlatformCFO/CTOProduct, SREАкаунт-власники
SSO/SCIM/JMLIT/IAMCIOHR, SecurityКерівники
Аудит/рецертифікаціяComplianceCCOSecurity, OpsМенеджмент

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

TTG (Time-to-Grant): медіана видачі стандартного доступу ≤ 4 год.
JIT Coverage: ≥ 80% привілейованих операцій через тимчасові ролі.
SoD Violations: 0 в prod; TTR усунення ≤ 24 год.
Orphaned Access: частка «забутих» прав ≤ 0. 1%.
Quota Accuracy: збіг нарахувань/використання ≥ 99. 99%.
Audit Completeness: 100% критичних дій з підписом/квитанцією.

12) Дашборди

Access Health: активні ролі за рівнями, що закінчуються TTL, порушення SoD.
FinOps: використання квот, прогноз бюджету, аномалії egress/compute.
Security: ротація ключів, провали MFA/SSO, ризик-скор когорт.
Compliance: статус рецертифікації, аудит-логи, порушення політик.
Operations: MTTR запитів на доступ, TTFI для нових команд.

13) Розмежування даних і приватність

Data Domains: PII/фінанси - тільки на рівні Account; Sub-account - агрегати/токени.
Регіональність: локалізація даних і ключів per-region (зони довіри).
Запити до PII: тільки через затверджені джоби; токенізація та маскування.

14) Ризики та анти-патерни

Flat-модель: всі - «адміни» → інциденти і витоки.
Shared-секрети: невідслідковуваність і неможливість відгуків.
Немає SoD: одна людина створює і затверджує виплати/ліміти.
Нерознесені середовища: dev-ключі в prod; змішування тестових і реальних даних.
«Нескінченні» ролі: без TTL/рецертифікації → накопичення ризиків.
Слабкі квоти: один Sub-account «з'їдає» ємність всіх.

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

Компрометація ключа Sub-account: негайний відгук, ротація залежностей, перерахунок квот, аудит останніх 7-30 днів.
Перевищення квот: автоматичний тротлінг/паузер, повідомлення власника, тимчасовий бюджетний капітал.
Порушення SoD: блокування операції, тимчасове зняття ролі, розслідування і фіксація політики.
Підміна вебхуків: заборона прийому без підпису/поза TTL, re-key, статус-ендпоінт звірок.

16) Онбординг і життєвий цикл

1. Ініціалізація Tenant: SSO/SCIM, білінг-профіль, глобальні політики.
2. Створення Account: регіони, квоти, бюджети, зони даних, базові ролі.
3. Sub-account: ключі/вебхуки, ролі команд, інтеграції.
4. JML/Рецертифікація: щоквартальний перегляд прав, авто-зняття «сплячих».
5. EOL: архів, відкликання ключів, перенесення володіння, закриття білінгу.

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

  • Узгодити дерево Tenant → Account → Sub-account і правила спадкування.
  • Описати ролі (RBAC) і контекстні політики (ABAC), матрицю SoD.
  • Запустити SSO/SCIM, JML-процеси і JIT-підвищення.
  • Ввести квоти/бюджети/кап-правила і алертинг.
  • Розгорнути KMS/Vault, ротації і заборона shared-секретів.
  • Включити політики-як-код, підписані релізи і WORM-журнали.
  • Налаштувати API/вебхуки управління, статус-ендпоінти і аудит.
  • Побудувати дашборди Access/FinOps/Security/Compliance.
  • Провести GameDay: витік ключа, квота-шторм, відмова IdP, порушення SoD.
  • Регулярно рецертифікувати ролі і переглядати ліміти.

18) FAQ

Де тримати межу між Account і Sub-account?
Там, де змінюються фінанси/комплаєнс/регуляторика (Account), а Sub-account - про команду/продукт/середовище.

Чи можна «склеювати» квоти декількох Sub-account?
Так, через пули і пріоритети, але із запобіжниками від «випалювання» ємності.

Як швидко видати тимчасовий доступ?
JIT-заявка з MFA і TTL, автологування і пост-мортем для привілейованих сесій.

Чи потрібні різні ключі по середах?
Обов'язково: окремі Service Accounts/ключі для dev/stage/prod з ізоляцією мереж і прав.

Резюме: Ієрархія акаунтів і субкористувачів - це каркас керованості: читана структура сутностей, успадковані політики, строгі квоти і білінг, безпечні ідентичності і доказовий аудит. Впровадивши гібрид RBAC/ABAC/ReBAC, JIT/SoD і policy-as-code, ви отримаєте швидкий онбординг, передбачувані витрати і стійку безпеку при масштабуванні по продуктах, командах і регіонах.

Contact

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

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

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

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

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

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