Подробное объяснение трех основных моделей разрешений: ACL, ABAC, RBAC.
Подробное объяснение трех основных моделей разрешений: ACL, ABAC, RBAC.

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

В этой статье представлены три наиболее распространенные модели разрешений.

1. Список управления доступом ACL

ACL — это модель управления разрешениями на основе объектов и субъектов. Она управляет разрешениями путем определения списка доступа для каждого объекта и контролирует доступ субъекта к объекту на основе разрешений доступа к конкретному объекту.

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

ACL легко понять. Для всех ресурсов и всех пользователей просто поддерживайте таблицу разрешений «один к одному». Однако по мере увеличения количества пользователей или ресурсов ограничения разрешений будут постепенно расширяться, и их станет трудно поддерживать.

2. Модель управления разрешениями на основе атрибутов ABAC

ABAC — это модель управления разрешениями на основе атрибутов, которая управляет разрешениями доступа на основе атрибутов субъектов и объектов путем определения правил. Эта модель позволяет более гибко контролировать права доступа и принимать решения о доступе на основе большего количества факторов.

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

Основные концепции модели ABAC включают в себя:

  1. Атрибуты: Модель ABAC описывает пользователей на основе атрибутов.、ресурсы и окружающая среда. Свойства обычно включают идентификаторы、Типы и значения。Например,Атрибутом пользователя может быть его отдел или должность.,Атрибутом ресурса может быть проект или тип, к которому он принадлежит.
  2. Политика: политики контроля доступа в ABAC формулируются на основе атрибутов. Политики могут использовать логические выражения для объединения нескольких атрибутов.,Для определения посетите Разрешения. Например,Политика может указывать, что только пользователи с ролью отдела продаж и менеджера могут получать доступ к отчетам о продажах.
  3. Решения по контролю доступа: ABAC использует атрибуты для принятия решений.,Имеет ли пользователь право доступа к ресурсу определяется на основе атрибутов пользователя, атрибутов ресурса и атрибутов среды. Решения о доступе позволяют гибко регулировать разрешения доступа на основе различных комбинаций атрибутов.

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

3. Модель управления разрешениями RBAC на основе ролей.

RBAC — это модель управления разрешениями на основе ролей, которая назначает пользователям определенные роли, а затем назначает разрешения каждой роли. Это упрощает управление разрешениями и повышает безопасность и удобство обслуживания.

Модель RBAC в основном включает в себя следующие элементы:

  1. Роль:роль Разрешенияуправлятьосновной,Это сборник Разрешений.,Представляет доступ Разрешения, принадлежащий типу пользователя. Роли должны быть разделены соответствующим образом в соответствии с функциями и решениями организации.,В целях эффективного управления Разрешениями и тонкого контроля доступа пользователей.
  2. Пользователь:Реальные пользователи в системе,Получите соответствующие Разрешения, назначая пользователям разные роли.
  3. Разрешение:Разрешения Относится к разрешению на эксплуатацию системных ресурсов.,напиши、Исправить、Удалить и другие различные операции.
  4. Назначение ролей пользователя:Назначьте пользователям соответствующие роли,Определить диапазон Разрешения пользователя.
  5. Назначение ролей и разрешений:Определите, какие конкретные роли имеют разные роли.Разрешения。

Реализация модели RBAC обычно включает три уровня контроля доступа:

  1. Управление доступом на уровне пользователя: пользователи имеют соответствующие Разрешения в зависимости от роли, к которой они принадлежат.,Это контролирует доступ пользователей к системным ресурсам.
  2. Управление доступом на уровне ролей: управление и контроль Разрешений для конкретных ролей, чтобы гарантировать, что разные роли имеют правильные Разрешения.
  3. Контроль доступа на уровне системы: контролируйте доступ ко всем системным ресурсам для предотвращения несанкционированного доступа.

Модель RBAC имеет следующие преимущества:

  1. Гибкость: роли можно гибко распределять в соответствии с реальными потребностями.,И быстро корректировать Разрешения.
  2. Упрощенное управление: управление пользователями, ролями и решениями стало проще и интуитивно понятнее, его легче обслуживать и обновлять.
  3. Безопасность: Модель RBAC может снизить нагрузку на распространение и аудит Разрешения.,Помогает снизить внутренние и внешние риски безопасности.

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

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

·END·

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода