Jump to content

Управление доступом на основе атрибутов

Управление доступом на основе атрибутов ( ABAC ), также известное как управление доступом на основе политик для IAM , определяет парадигму управления доступом, при которой авторизация субъекта на выполнение набора операций определяется путем оценки атрибутов, связанных с субъектом, объектом, запрошенными операциями, и, в некоторых случаях, атрибуты окружающей среды. [1]

ABAC — это метод реализации политик контроля доступа, который легко адаптируется и может быть настроен с использованием широкого спектра атрибутов, что делает его пригодным для использования в распределенных или быстро меняющихся средах. Единственными ограничениями политик, которые могут быть реализованы с помощью ABAC, являются возможности вычислительного языка и наличие соответствующих атрибутов. [2] Правила политики ABAC генерируются как логические функции атрибутов субъекта, атрибутов объекта и атрибутов среды. [3]

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

Значения атрибутов могут иметь множество значений или атомарные значения. Атрибуты с множеством значений содержат более одного атомарного значения. Примерами являются role и project . Атрибуты с атомарным значением содержат только одно атомарное значение. Примерами являются клиренс и чувствительность . Атрибуты можно сравнивать со статическими значениями или друг с другом, что обеспечивает управление доступом на основе отношений. [ нужна ссылка ]

Хотя сама концепция существует уже много лет, ABAC считается моделью авторизации «следующего поколения», поскольку она обеспечивает динамическое, контекстно-зависимое и интеллектуальное управление доступом к ресурсам, позволяющее применять политики контроля доступа, включающие определенные атрибуты из множества различных информационных систем. определены для разрешения авторизации и достижения эффективного соответствия нормативным требованиям, что обеспечивает предприятиям гибкость в реализации на основе существующей инфраструктуры.

Управление доступом на основе атрибутов иногда называют контролем доступа на основе политик ( PBAC ) или контролем доступа на основе утверждений ( CBAC ), что является термином, специфичным для Microsoft. Ключевыми стандартами, реализующими ABAC, являются XACML и ALFA (XACML) . [4]

Аспекты управления доступом на основе атрибутов

[ редактировать ]

ABAC можно рассматривать как:

  • Внешнее управление авторизацией [5]
  • Динамическое управление авторизацией [6]
  • Контроль доступа на основе политик
  • Детальная авторизация

Компоненты

[ редактировать ]

Архитектура

[ редактировать ]

ABAC поставляется со следующей рекомендуемой архитектурой:

  1. PEP или точка применения политики: она отвечает за защиту приложений и данных, к которым вы хотите применить ABAC. PEP проверяет запрос и генерирует запрос авторизации, который отправляет PDP.
  2. PDP или точка принятия политических решений — это мозг архитектуры. Это часть, которая оценивает входящие запросы на соответствие политикам, с которыми она настроена. PDP возвращает решение о разрешении/отказе. PDP также может использовать PIP для получения недостающих метаданных.
  3. PIP или точка информации о политике соединяют PDP с внешними источниками атрибутов, например LDAP или базами данных.

Атрибуты

[ редактировать ]

Атрибуты могут быть о чем угодно и о ком угодно. Они, как правило, делятся на 4 различные категории:

  1. Атрибуты субъекта: атрибуты, которые описывают пользователя, пытающегося получить доступ, например возраст, допуск, отдел, роль, должность.
  2. Атрибуты действия: атрибуты, описывающие предпринимаемое действие, например чтение, удаление, просмотр, утверждение.
  3. Атрибуты объекта: атрибуты, которые описывают объект (или ресурс), к которому осуществляется доступ, например, тип объекта (медицинская карта, банковский счет), отделение, классификация или чувствительность, местоположение.
  4. Контекстные атрибуты (среды): атрибуты, которые связаны со временем, местоположением или динамическими аспектами сценария управления доступом. [7]

Политика

[ редактировать ]

Политики — это заявления, которые объединяют атрибуты, чтобы выразить то, что может произойти, а что не разрешено. Политики в ABAC могут предоставлять или запрещать политики. Политики также могут быть локальными или глобальными и могут быть написаны таким образом, чтобы они переопределяли другие политики. Примеры включают в себя:

  1. Пользователь может просмотреть документ, если документ находится в том же отделе, что и пользователь.
  2. Пользователь может редактировать документ, если он является владельцем и если документ находится в режиме черновика.
  3. Запретить доступ до 9 утра

С ABAC вы можете иметь столько политик, сколько захотите, которые подходят для множества различных сценариев и технологий. [7]

Другие модели

[ редактировать ]

Исторически модели контроля доступа включали обязательный контроль доступа (MAC), дискреционный контроль доступа (DAC) и, в последнее время, контроль доступа на основе ролей (RBAC). Эти модели управления доступом ориентированы на пользователя и не принимают во внимание дополнительные параметры, такие как информация о ресурсе, связь между пользователем (запрашивающим объектом) и ресурсом, а также динамическую информацию, например время суток или IP-адрес пользователя.

ABAC пытается решить эту проблему, определяя контроль доступа на основе атрибутов, которые описывают запрашивающую сущность (пользователя), целевой объект или ресурс, желаемое действие (просмотр, редактирование, удаление), а также информацию об окружающей среде или контекстуальную информацию. Вот почему говорят, что управление доступом основано на атрибутах. [8]

Реализации

[ редактировать ]

Существует три основные реализации ABAC:

XACML , расширяемый язык разметки контроля доступа, определяет архитектуру (совместно с ALFA и NGAC), язык политик и схему запросов/ответов. Он не обрабатывает управление атрибутами (назначение атрибутов пользователя, назначение атрибутов объекта, назначение атрибутов среды), которое остается на усмотрение традиционных инструментов IAM , баз данных и каталогов.

Компании, в том числе все подразделения вооруженных сил США, начали использовать ABAC. На базовом уровне ABAC защищает данные с помощью правил «ЕСЛИ/ТО/И», а не назначает данные пользователям. Министерство торговли США сделало это обязательной практикой, и принятие распространяется на несколько правительственных и военных ведомств. [9]

Приложения

[ редактировать ]

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

Важным соображением при оценке решений ABAC является понимание их потенциальных затрат на производительность и их влияния на взаимодействие с пользователем. Ожидается, что чем более детализирован контроль, тем выше накладные расходы.

Безопасность API и микросервисов

[ редактировать ]

ABAC можно использовать для применения детальной авторизации на основе атрибутов к методам или функциям API. Например, банковский API может предоставлять метод ApprovTransaction(transId). ABAC можно использовать для защиты вызова. С помощью ABAC автор политики может написать следующее:

  • Политика : менеджеры могут одобрять транзакции в пределах установленного лимита одобрения.
  • Используемые атрибуты : роль, идентификатор действия, тип объекта, сумма, лимит одобрения.

Поток будет следующим:

  1. Пользователь Алиса вызывает метод API ApprovTransaction(123).
  2. API принимает вызов и аутентифицирует пользователя.
  3. Перехватчик в API обращается к механизму авторизации (обычно называемому точкой принятия решения о политике или PDP) и спрашивает: может ли Алиса одобрить транзакцию 123?
  4. PDP извлекает политику ABAC и необходимые атрибуты.
  5. PDP принимает решение, например, «Разрешить» или «Запретить», и возвращает его перехватчику API.
  6. Если принято решение «Разрешить», вызывается базовая бизнес-логика API. В противном случае API возвращает ошибку или доступ запрещен.

Безопасность приложений

[ редактировать ]

Одним из ключевых преимуществ ABAC является то, что политики и атрибуты авторизации могут быть определены технологически нейтральным способом. Это означает, что политики, определенные для API или баз данных, можно повторно использовать в пространстве приложений. Распространенными приложениями, которые могут извлечь выгоду из ABAC, являются:

  1. Системы управления контентом
  2. ERP-системы
  3. Собственные приложения
  4. Веб-приложения

Здесь применим тот же процесс и последовательность действий, что и описанные в разделе API.

Безопасность базы данных

[ редактировать ]

Безопасность баз данных уже давно является специфичной для поставщиков баз данных: Oracle VPD, IBM FGAC и Microsoft RLS — все это средства для достижения детальной безопасности, подобной ABAC.

Примером может быть:

  • Политика: менеджеры могут просматривать транзакции в своем регионе
  • Переработанная политика с учетом данных: пользователи с role == manager могу выполнить действие SELECT на table == TRANSACTIONS если user.region == transaction.region

Безопасность данных

[ редактировать ]

Безопасность данных обычно идет на шаг дальше, чем безопасность базы данных, и применяет контроль непосредственно к элементу данных. Это часто называют безопасностью, ориентированной на данные. В традиционных реляционных базах данных политики ABAC могут контролировать доступ к данным в таблице, столбце, поле, ячейке и подячейке, используя логические элементы управления с условиями фильтрации и маскированием на основе атрибутов. Атрибуты могут быть данными, пользователем, сеансом или инструментами, обеспечивающими максимальный уровень гибкости при динамическом предоставлении/запрете доступа к определенному элементу данных. В больших данных и распределенных файловых системах, таких как Hadoop, ABAC применяется на уровне данных для управления доступом к папке, подпапке, файлу, подфайлу и другим детальным данным.

Безопасность больших данных

[ редактировать ]

Управление доступом на основе атрибутов также может применяться к системам больших данных, таким как Hadoop. Политики, аналогичные использованным ранее, можно применять при извлечении данных из озер данных. [10] [11]

Безопасность файлового сервера

[ редактировать ]

Начиная с Windows Server 2012, Microsoft реализовала подход ABAC для контроля доступа к файлам и папкам. Это достигается за счет динамического контроля доступа (DAC). [12] и язык определения дескрипторов безопасности (SDDL). SDDL можно рассматривать как язык ABAC, поскольку он использует метаданные пользователя (утверждения) и файла/папки для управления доступом.

См. также

[ редактировать ]
  1. ^ Отдел компьютерной безопасности, Лаборатория информационных технологий (24 мая 2016 г.). «Управление доступом на основе атрибутов | CSRC | CSRC» . ЦКРС | НИСТ . Проверено 25 ноября 2021 г.
  2. ^ Ху, Винсент С.; Кун, Д. Ричард; Феррайоло, Дэвид Ф.; Воас, Джеффри (февраль 2015 г.). «Контроль доступа на основе атрибутов» . Компьютер . 48 (2): 85–88. дои : 10.1109/MC.2015.33 . ISSN   1558-0814 . S2CID   54967881 .
  3. ^ «Руководство по защите веб-сервисов: рекомендации Национального института стандартов и технологий» (PDF) .
  4. ^ Сильва, Эдельберто Франко; Мучалуат-Сааде, Дебора Кристина; Фернандес, Наталья Кастро (01 января 2018 г.). «ACROSS: универсальная структура для управления доступом на основе атрибутов с распределенными политиками для виртуальных организаций» . Компьютерные системы будущего поколения . 78 : 1–17. дои : 10.1016/j.future.2017.07.049 . ISSN   0167-739X .
  5. ^ «Обзор технологии внешнего управления авторизацией» . www.gartner.com . Проверено 31 мая 2017 г.
  6. ^ «Компас лидерства: динамическое управление авторизацией – 71144» . Куппингер Коул . Проверено 14 июля 2020 г.
  7. ^ Перейти обратно: а б «Альтернативы для систем контроля доступа к ролям/заявкам» . stackoverflow.com .
  8. ^ «Что такое контроль доступа на основе атрибутов (ABAC)?» . www.okta.com . Проверено 13 сентября 2023 г.
  9. ^ Сэнфорд, Джим. «Шифрование на стероидах – контроль доступа на основе атрибутов (ABAC)» . Сименс . Проверено 13 октября 2023 г.
  10. ^ «Динамическая, детальная авторизация защищает большие данные» .
  11. ^ «Первый детальный контроль доступа к данным в Hadoop» . Архивировано из оригинала 23 марта 2016 г.
  12. ^ «Обзор динамического контроля доступа (Windows 10) — безопасность Windows» .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: f3f2c90bfb7f86468242b575596c17e9__1720518720
URL1:https://arc.ask3.ru/arc/aa/f3/e9/f3f2c90bfb7f86468242b575596c17e9.html
Заголовок, (Title) документа по адресу, URL1:
Attribute-based access control - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)