Минимум привилегий и роли
Принцип наименьших привилегий на практике: роли вместо личных прав, разделение обязанностей и почему это снижает ущерб.
Принцип наименьших привилегий
Принцип наименьших привилегий (least privilege) говорит: давай каждому ровно те права, что нужны для работы, и ни на йоту больше. Это сквозная идея, которую мы встречали уже не раз: системные пользователи под сервисы вместо root, sudo вместо пароля root, доступ сервиса только к своим секретам.
Смысл в ограничении ущерба. Если у компонента минимум прав, его компрометация открывает атакующему минимум. Учётка с правами на одну базу при утечке сдаёт одну базу, а не весь кластер.
Роли вместо личных прав
Раздавать права каждому человеку и сервису по отдельности не масштабируется и быстро превращается в хаос. RBAC (Role-Based Access Control) решает это: права собирают в роли, а субъектам выдают роли.
Появился новый человек, и ему выдают подходящую роль, а не перечисляют права руками. Поменялись требования к роли, и это применяется ко всем, у кого она есть. Так устроены права в Kubernetes, в облаках (IAM), в базах данных.
Что субъект и что ресурс
В модели RBAC три части:
- субъект это тот, кто действует: человек, сервис, CI-бот.
- роль это набор разрешений (что можно делать).
- ресурс это то, над чем действуют (база, под, бакет).
Роль связывает разрешения с ресурсами: «читать поды в namespace prod»,
«писать в бакет backups». Субъект получает роль и ровно эти возможности.
Разделение обязанностей
Важное следствие least privilege — разделение обязанностей (separation of duties). Один субъект не должен мочь всё в одиночку, особенно в критичных операциях. CI-бот может собрать образ и запушить в registry, но не имеет прав удалять прод-базу. Деплой в прод требует подтверждения второго человека из урока про gates.
Так одна скомпрометированная учётка или одна ошибка не приводят к катастрофе: для опасного действия нужно несколько прав или несколько людей.
Что важно запомнить
Принцип наименьших привилегий ограничивает ущерб: дай каждому ровно нужные права, и компрометация компонента откроет минимум. Это сквозная идея от системных пользователей до доступа к секретам.
RBAC собирает права в роли и выдаёт роли субъектам, что масштабируется лучше личных прав. Модель — субъект, роль и ресурс.
Разделение обязанностей не даёт одному субъекту делать всё в одиночку: опасные операции требуют нескольких прав или подтверждения второго человека.
Этим закрывается трек linux-security: ключи, конфиг, харденинг, сканирование и роли.
Прошли материал до конца? Отметьте урок пройденным.
Прогресс сохранён в этом браузере
Почистишь историю или откроешь с телефона, и отметки пропадут. Оставь почту, они переедут в аккаунт. Пароль придумывать не нужно.
Готово. теперь в аккаунте: прогресс виден с любого устройства. Мой прогресс