предисловие
В компьютерной индустрии контроль доступа относится к управлению правами доступа разных людей к компьютерам и компьютерным ресурсам. В этом документе кратко представлены основные механизмы управления доступом (концепции и модели), признанные и широко используемые в отрасли, а также кратко проанализированы сценарии их использования и ограничения. Это позволяет читателям лучше понять разницу между различными механизмами, чтобы помочь читателям выбрать наиболее подходящую модель и метод для своих собственных проектов.
Контроль доступа
Контроль доступа, как следует из его названия, является мерой безопасности, которая регулирует доступ пользователей к ресурсам путем проверки разрешений пользователей. следовательнологотип(Удостоверение личности),Сертификация(аутентификация) иРазрешить(авторизация) состоит из трех важных частей модели управления доступом.
Если читатели читали книги, связанные с безопасностью или разрешениями, или имеют соответствующие практики, они должны быть знакомы с различиями между этими тремя понятиями.identification-authentication-authorizationУзнать о
Механизм управления доступом позволяет субъектам (субъекту, представляющему текущего «пользователя», не обязательно человека, но также сканера или робота) использовать свои учетные данные (учетные данные, такие как пароль или токен), чтобы идентифицировать себя как законных пользователей и предоставлять основной доступ к ресурсу. Простым примером является контроль доступа в системе Linux.В системе Linux файлы, к которым может получить доступ пользователь, ограничены предопределенным списком контроля доступа (ACL).
Классификация контроля доступа
Контроль доступа иногда делится на две категории: дискреционный и недискреционный.Существуют три основных типа моделей контроля доступа, которые широко распространены и применяются:Обязательный контроль доступа(MAC, обязательный контроль доступа),дискреционный контроль доступа(DAC, Дискреционный контроль доступа),управление доступом на основе ролей(RBAC, управление доступом на основе ролей)
Discretionary access control (DAC)
DAC — это политика, устанавливаемая владельцем объекта (Объекта, которым может быть файл или данные в системе), и владелец решает, кто может получить доступ к объекту (Объекту) и какие у него есть Привилегии (чтение и запись и т. д.). ).
Я не думаю, что это очень уместно переводить политику в политику на каком-то китайском языке.Я просто использую здесь английский.Слово политика будет часто появляться в темах, связанных с безопасностью.Ну… Wikipedia.org/wiki/com Обычные….
DAC имеет две важные концепции:
- Право собственности на файл и данные: Все объекты в системе имеют владельца.В большинстве систем DAC первоначальным владельцем объекта является субъект, вызвавший создание объекта, и политика для этого объекта формулируется субъектом.
- Access rights and permissions:owner может устанавливать права доступа других субъектов (subject).
В основных моделях DAC для записи политики часто используются ACL или ACM (матрица управления доступом). Например, в casbin для представления политики используется следующий контент.
p alice data1 read
p bob data2 write
Пользователь, имеющий права доступа к объекту, может передать права доступа к объекту другим пользователям, поэтому такое управление называется «дискреционным». Наиболее распространенным применением этой схемы является разработка разрешений файловой системы, такой как NTFS от Microsoft.
Самым большим недостатком DAC является то, что контроль разрешений относительно разбросан, что не так просто управлять, например, невозможно просто установить единые разрешения для группы файлов и открыть их для определенной группы пользователей. В то же время, если полномочия субъекта слишком велики, возможна непреднамеренная утечка информации, и список управления доступом не может быть защищен от атаки троянскими конями.
Обязательное управление доступом (MAC)
MAC — более «строгая» система. Такие правила управления доступом обычно классифицируют данные и пользователей по меткам в соответствии с уровнями безопасности, а механизм управления доступом определяет, предоставлять или запрещать пользователям доступ к ресурсам, сравнивая метки безопасности. Пользователи могут получить доступ к соответствующим объектам только в соответствии с разрешениями, предоставленными меткой безопасности.
В системе обязательного контроля доступа всем Субъектам (пользователям, процессам) и Объектам (файлы, данные) назначаются метки безопасности, которые определяют уровень безопасности. Сравнение уровня безопасности субъекта и объекта при выполнении контроля доступа является методом доступа, навязанным субъекту (то есть система заставляет субъекта подчиняться политике управления доступом). конфиденциальность.
В основном это модель Bell LaPadula (BLP) и модель решетки.
Метод управления доступом по MAC-адресу реализует односторонний поток информации через градиентные метки безопасности, что позволяет эффективно предотвращать троянские атаки, однако его реализация требует больших объемов работ, неудобного управления и недостаточной гибкости, а также подчеркивает конфиденциальность. много, и это оказывает постоянное влияние на систему.Недостаточное внимание работоспособности и управляемости авторизации, он редко используется в коммерческом программном обеспечении, в основном в вооруженных силах и в организациях, которые требуют чрезвычайно высокой конфиденциальности информации.
Управление доступом на основе ролей (RBAC)
RBAC является основным выбором после MAC и DAC, поскольку он больше подходит для коммерческого программного обеспечения, чем DAC и MAC. Управление доступом на основе ролей (RBAC) — это разделение прав пользователей в системе по ролям, например, в системе у врачей есть разрешение на создание новых случаев, а у обычных медсестер — нет. Он обеспечивает детальное управление и предоставляет простой и удобный в управлении подход к управлению доступом, который менее подвержен ошибкам, чем индивидуальное назначение разрешений пользователям (например, ACL).
постскриптум
В этой статье представлен контроль доступа и представлено несколько связанных основных моделей, некоторые из которых, такие как ABAC, и некоторые варианты модели подробно не представлены. Следите за подробностями в следующих статьях.
использованная литература
- Computer_access_control wiki
- «Управление доступом на основе ролей, второе издание», главы 1 и 2.
- types-access-control-systems in statesystemsinc.com
- Casbin document
- RBAC in Auth0