SOT

Security Orchestration Tools

SIEM
Security Information and Event Management

Мониторинг событий ИБ

EDR
Endpoint Detection and Response

Защита конечных точек

SOAR
Security Orchestration, Automation and Response

Автоматизация реагирования на инциденты ИБ

NG SOAR
Next Generation SOAR

Автоматизация реагирования на инциденты ИБ со встроенной базовой корреляцией, сбором сырых событий непосредственно с СЗИ, динамическими плейбуками, выстраиванием цепочки атаки и объектно-ориентированным подходом

AM
Asset Management

Инвентаризация и управление ИТ-активами

VM
Vulnerability Management

Устранение уязвимостей с автопатчингом

VS
Vulnerability Scanner

Поиск технических уязвимостей на активах

SPC
Security Profile Compliance

Управление конфигурациями безопасности активов

ГосСОПКА
Государственная Система Обнаружения Предупреждения и Ликвидации Последствий Компьютерных Атак

Двустороннее взаимодействие с НКЦКИ

FinCERT
Financial Computer Emergency Response Team

Двустороннее взаимодействие с ЦБ

Напишите нам на sales@securityvision.ru или закажите демонстрацию

Авторизация

Авторизация

Руслан Рахметов, Security Vision


Технология авторизации — это важная часть информационной безопасности, которая определяет, что именно пользователь может делать в системе после того, как он прошёл аутентификацию (т.е. доказал свою личность). Авторизоваться – значит запустить и пройти проверку прав доступа, когда система решает, можешь ли ты просматривать личные данные, редактировать их, или только читать. В текущей статье мы разберём каждый вид авторизации — что он из себя представляет, как работает, где используется, его плюсы и минусы. Это поможет вам как выбрать для своих задач подходящую методику, так и разобраться в отличиях.


Все модели авторизации можно описать несколькими группами, на основе ролей, атрибутов, списков доступа и политик безопасности.


RBAC (Role-Based Access Control) — это один из самых популярных и широко используемых методов авторизации. Он прост в реализации и понятен для большинства систем. Контроль доступа на основе ролей — это модель, при которой доступ к ресурсам предоставляется не напрямую пользователям, а через роли (наборы прав, которые определяют, какие действия можно выполнять).


Такую модель можно представить в виде трёх уровней: 

1) пользователь получает одну или несколько ролей; 

2) каждая роль содержит набор разрешений; 

3) разрешения определяют, что можно делать (например: читать, писать, удалять).


Можно представить дом с разными ключами для множества замков, когда у каждого жильца свой уровень доступа: ребёнок открывает только входную дверь, родители — ещё и подвал, гараж. Четкое разделение по ролям можно заметить, например, в супермаркете, когда покупатель берёт товар и собирает продуктовую корзину, кассир пробивает и помогает провести оплату, менеджер пересчитывает кассу в указанные регламентами сроки, а директор магазина имеет доступ ко всем системам.


В модели авторизации RBAC легко назначать и изменять доступ, просто меняя роли, благодаря прозрачности уровней сразу становится понятно, кто за что отвечает. Подходит она для систем с сотнями пользователей, а с точки зрения безопасности позволяет легко внедрить принцип наименьших привилегий. Несмотря на простоту и прозрачность, модель эта не самая гибкая: если нужно задать уникальные права пользователю, нужно создавать новые роли или делать исключения, а при большом количестве комбинаций прав может появиться множество ролей, и ими сложно управлять.

 

RBAC широко применяется в корпоративных системах (например, в компании у сотрудников есть роли: бухгалтер, менеджер, директор, и у каждого свои права в системе), сайтах и веб-приложениях (админ может всё, редактор — публиковать, пользователь — только читать), базах данных (например, в PostgreSQL и Oracle у каждой роли своя видимость таблиц, процедур и данных), операционных системах (в Linux или Windows: у обычных пользователей ограниченные права, у администратора — полный доступ) и облачных решениях (например, в AWS создаются роли с доступом только к нужным сервисам). Сравнить такую модель можно с работой доступов в библиотеке, когда посетители могут читать книги, библиотекари — выдавать и принимать, а заведующая — заказывать новые экземпляры по потребности. Или с работой с данными в поликлинике, когда пациент видит свою карту, медсестра может вносить назначения, врач ставит диагнозы, а главный врач управляет всем сразу и имеет самый полный доступ.

 

ABAC (Attribute-Based Access Control) – гораздо более гибкий и «умный» способ управления доступом. Контроль доступа на основе атрибутов – это модель авторизации, в которой решения о доступе принимаются на основе набора атрибутов: пользователя (кто он), ресурса (что это), действия (что он хочет сделать), контекста (в каком окружении). А доступ выдается в том случае, если все условия совпали.

 

Вместо простых ролей, как в RBAC, здесь применяется логика «если Х - то Y», например: ЕСЛИ пользователь работает в отделе HR, ресурс – файл типа резюме, текущее время – рабочие часы и доступ запрашивается с корпоративного устройства, ТОГДА разрешить доступ к чтению файла. Также модель применима для постаматов в пунктах выдачи товаров: если покупатель пришел на место и предоставил код доступа к ячейке в пределах сроков хранения посылки – дверь откроется и клиент сможет получить товар.

 

Вся авторизация строится на политиках доступа (rules/policies), состоящих из логических выражений.

 

Таким образом, например, работают доступы в школу (если это учитель, и у него карта доступа, и сейчас будний день — разрешить вход) или выдается социальная скидка в супермаркетах (если покупателю > 60 лет, у него есть подтверждение возраста или статуса и покупки совершаются в будние дни до 17:00, тогда предоставляется дополнительная скидка 10%).

 

ABAC обеспечивает большую гибкость, можно задавать доступ в зависимости от множества факторов. Сам доступ настраивается гранулярно, к конкретным объектам в определённых условиях, а система авторизации отлично масштабируется: не нужно создавать тысячи ролей, как в RBAC. Поскольку для реализации модели нужно спроектировать и внедрить систему правил, а со временем логика может стать слишком запутанной, у текущего варианта достаточно высокий порог входа – нужно хорошо понимать логику политик.

 

ABAC применяется для корпоративных порталов с множеством переменных (отдел, регион, стаж, устройство), облачных платформ (AWS, Azure), где администраторы гибко управляют доступом по ресурсам, тегам, условиям, в финансовых и медицинских системах, где нужно учитывать множество факторов безопасности, а также в военных и государственных учреждениях.

 

ACL (Access Control List) – это список правил, который прикреплён к каждому ресурсу (например, файлу, записи в БД, API-эндпоинту) и определяет, кто и что может делать с этим объектом. Доступ через список контроля определяет разрешения на объекте, а не на пользователе: у каждого ресурса есть список, где указано кто может получить доступ и что сможет сделать по правилам компании.

 

Так, например, устроены многие системы доступа в офис (у каждой двери есть свой список, кто может входить, например, в серверную — только админы) или игры на приставке (у каждой игры может быть доступ по профилю: «детский», «взрослый», «гость», которые определяют кто сможет запустить игру, сохранить прогресс или удалить сохранения).

 

Модель ACL очень гибкая на уровне каждого ресурса, можно очень точно настроить, кто к чему имеет доступ, она используется десятилетиями (например, в UNIX -системах вроде MacOS), реализовать её достаточно просто. Несмотря на это, ACL масштабируется достаточно сложно (если объектов много, становится сложно управлять списками), а понять, кто к чему имеет доступ, сложнее, чем в первой модели нашего списка (RBAC).

 

Применяется она в файловых системах (Linux, Windows, NTFS, ext4), веб-сервисах (Apache.htaccess), базах данных (например, MongoDB, Redis), сетевых устройствах и облачных хранилищах (Яндекс.Диск, Google Drive, Dropbox).

 

MAC (Mandatory Access Control) – это самая жёсткая и строгая модель авторизации из всех, о которых мы говорили выше. Модель принудительного контроля доступа, при которой правила задаются централизованно, и пользователи не могут изменить права доступа самостоятельно – как армейский устав: всё строго по регламенту.

 

Каждому: объекту (документ, файл, база, ресурс) и субъекту (пользователь, процесс) присваиваются метки безопасности (например, «Секретно», «Конфиденциально», «Открыто» для разных объектов-документов, а доступ разрешается только если метка субъекта соответствует метке объекта (или выше).

 

Это похоже на доступ в зону запуска на космодроме (только у инженеров с «допуском» есть возможности пройти на территорию и выполнять там свою работу) или доступ к экзаменационным материалам (только комиссия имеет доступ, а студенты получают ограниченные права на ознакомление ближе к сессии).

 

MAC работает по принципу «не доверяй никому» (Zero-Trust): пользователь не может сам поменять права доступа, которые проверяются по политике безопасности, установленной администратором. Используется иерархия уровней доступа (как в армии или правительстве). Таким образом обеспечивается максимальная безопасность, единообразие политик и максимальное исключение человеческого фактора. Однако системы типа MAC показывают минимальную гибкость и сложность в настройках.

 

Такие четыре метода авторизации описывают подавляющее большинство процессов:


RBAC — это как система пропусков, где каждому назначается роль, и на основе этой роли определяется, что он может делать;

ABAC работает, как умный швейцар, который проверяет кучу условий, прежде чем впустить тебя: «ты сотрудник… но ты не из того отдела… да ещё и выходной… извини, доступ запрещён!»;

ACL отлично подходит там, где важен контроль на уровне объекта (это как списки гостей у каждого помещения), а не роли или контекста. Но при большом масштабе может стать неудобным;

А MAC, как военная дисциплина для файлов и данных, никакой демократии: всё решает метка и политика безопасности («Ты не в списке – ты не заходишь, даже если ты начальник отдела»).


Основная цель авторизации — защита данных и ресурсов: авторизация обеспечивает безопасность, позволяя только авторизованным пользователям получать доступ к определённым системам, функциям или данным. Без авторизации информация может быть уязвима для несанкционированного доступа.

 

Утечка данных Защита персональных данных Управление ИБ

Закажите демонстрацию
продукта Security Vision

Напишите нам на
sales@securityvision.ru
или закажите демонстрацию

Похожие статьи

Роль актива: от простого учёта до автоматизации
Роль актива: от простого учёта до автоматизации
Реализация требований и мер обеспечения безопасности персональных данных с помощью автоматизации
Реализация требований и мер обеспечения безопасности персональных данных с помощью автоматизации
Архитектура, инструменты и культура безопасной разработки ПО
Архитектура, инструменты и культура безопасной разработки ПО
Кибербезопасность ИИ. Часть 2. Трансформеры, LLM, ИИ
Кибербезопасность ИИ. Часть 2. Трансформеры, LLM, ИИ
Кибербезопасность ИИ. Часть 1. Нейросети и машинное обучение
Кибербезопасность ИИ. Часть 1. Нейросети и машинное обучение
10 популярных техник обхода EDR
10 популярных техник обхода EDR
Особенности стратегического и операционного мышления
Особенности стратегического и операционного мышления
Обучение и развитие: почему Linux — лучший выбор для детского ПК
Обучение и развитие: почему Linux — лучший выбор для детского ПК
ITAM vs CMDB – противники или команда?
ITAM vs CMDB – противники или команда?
Безопасная разработка без барьеров: как построить SSDLC, который реально работает
Безопасная разработка без барьеров: как построить SSDLC, который реально работает
No-code-разработка и ML-помощники – инструменты аналитиков SOC нового поколения
No-code-разработка и ML-помощники – инструменты аналитиков SOC нового поколения

Похожие статьи

Роль актива: от простого учёта до автоматизации
Роль актива: от простого учёта до автоматизации
Реализация требований и мер обеспечения безопасности персональных данных с помощью автоматизации
Реализация требований и мер обеспечения безопасности персональных данных с помощью автоматизации
Архитектура, инструменты и культура безопасной разработки ПО
Архитектура, инструменты и культура безопасной разработки ПО
Кибербезопасность ИИ. Часть 2. Трансформеры, LLM, ИИ
Кибербезопасность ИИ. Часть 2. Трансформеры, LLM, ИИ
Кибербезопасность ИИ. Часть 1. Нейросети и машинное обучение
Кибербезопасность ИИ. Часть 1. Нейросети и машинное обучение
10 популярных техник обхода EDR
10 популярных техник обхода EDR
Особенности стратегического и операционного мышления
Особенности стратегического и операционного мышления
Обучение и развитие: почему Linux — лучший выбор для детского ПК
Обучение и развитие: почему Linux — лучший выбор для детского ПК
ITAM vs CMDB – противники или команда?
ITAM vs CMDB – противники или команда?
Безопасная разработка без барьеров: как построить SSDLC, который реально работает
Безопасная разработка без барьеров: как построить SSDLC, который реально работает
No-code-разработка и ML-помощники – инструменты аналитиков SOC нового поколения
No-code-разработка и ML-помощники – инструменты аналитиков SOC нового поколения