Система разграничения доступа windows

Система разграничения доступа windows

(Раздел 5, вопрос 5) 50. Разграничение доступа в операционных системах.

Идентификация и аутентификация

Для начала рассмотрим проблему контроля доступа в систему. Наиболее распространенным способом контроля доступа является процедура регистрации. Обычно каждый пользователь в системе имеет уникальный идентификатор. Идентификаторы пользователей применяются с той же целью, что и идентификаторы любых других объектов, файлов, процессов. Идентификация заключается в сообщении пользователем своего идентификатора. Для того чтобы установить, что пользователь именно тот, за кого себя выдает, то есть что именно ему принадлежит введенный идентификатор, в информационных системах предусмотрена процедура аутентификации (authentication, опознавание, в переводе с латинского означает «установление подлинности»), задача которой — предотвращение доступа к системе нежелательных лиц.

Обычно аутентификация базируется на одном или более из трех пунктов:

то, чем пользователь владеет (ключ или магнитная карта);

то, что пользователь знает (пароль);

атрибуты пользователя (отпечатки пальцев, подпись, голос).

Авторизация. Разграничение доступа к объектам ОС

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

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

Желательно добиться того, чтобы процесс осуществлял авторизованный доступ только к тем ресурсам, которые ему нужны для выполнения его задачи. Это требование минимума привилегий, полезно с точки зрения ограничения количества повреждений, которые процесс может нанести системе. Hапример, когда процесс P вызывает процедуру А, ей должен быть разрешен доступ только к переменным и формальным параметрам, переданным ей, она не должна иметь возможность влиять на другие переменные процесса. Аналогично компилятор не должен оказывать влияния на произвольные файлы, а только на их хорошо определенное подмножество (исходные файлы, листинги и др.), имеющее отношение к компиляции. С другой стороны, компилятор может иметь личные файлы, используемые для оптимизационных целей, к которым процесс Р не имеет доступа.

Различают дискреционный (избирательный) способ управления доступом и полномочный (мандатный).

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

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

Субъект может читать информацию только из объекта, уровень секретности которого не выше уровня секретности субъекта. Генерал читает документы лейтенанта, но не наоборот.

Субъект может записывать информацию в объекты только своего уровня или более высоких уровней секретности. Генерал не может случайно разгласить нижним чинам секретную информацию.

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

Большинство операционных систем реализуют именно дискреционное управление доступом. Главное его достоинство — гибкость, основные недостатки — рассредоточенность управления и сложность централизованного контроля.

Домены безопасности

Чтобы рассмотреть схему дискреционного доступа более детально, введем концепцию домена безопасности (protection domain). Каждый домен определяет набор объектов и типов операций, которые могут производиться над каждым объектом. Возможность выполнять операции над объектом есть права доступа, каждое из которых есть упорядоченная пара . Домен, таким образом, есть набор прав доступа. Hапример, если домен D имеет права доступа , это означает, что процесс, выполняемый в домене D, может читать или писать в файл F, но не может выполнять других операций над этим объектом.

Читайте также:  Acronis true image для линукс

Связь конкретных субъектов, функционирующих в операционных системах, может быть организована следующим образом.

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

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

Каждая процедура может быть доменом. В этом случае набор доступных объектов соответствует локальным переменным, определенным внутри процедуры. Заметим, что когда процедура выполнена, происходит смена домена.

Рассмотрим стандартную двухрежимную модель выполнения ОС. Когда процесс выполняется в режиме системы (kernel mode), он может выполнять привилегированные инструкции и иметь полный контроль над компьютерной системой. С другой стороны, если процесс выполняется в пользовательском режиме, он может вызывать только непривилегированные инструкции. Следовательно, он может выполняться только внутри предопределенного пространства памяти. Наличие этих двух режимов позволяет защитить ОС (kernel domain) от пользовательских процессов (выполняющихся в user domain). В мультипрограммных системах двух доменов недостаточно, так как появляется необходимость защиты пользователей друг от друга. Поэтому требуется более тщательно разработанная схема.

В ОС Unix домен связан с пользователем. Каждый пользователь обычно работает со своим набором объектов.

Матрица доступа

Модель безопасности имеет вид матрицы, которая называется матрицей доступа . Какова может быть эффективная реализация матрицы доступа? В общем случае она будет разреженной, то есть большинство ее клеток будут пустыми. Хотя существуют структуры данных для представления разреженной матрицы, они не слишком полезны для приложений, использующих возможности защиты. Поэтому на практике матрица доступа применяется редко. Эту матрицу можно разложить по столбцам, в результате чего получаются списки прав доступа (access control list — ACL). В результате разложения по строкам получаются мандаты возможностей (capability list или capability tickets).

Список прав доступа. Access control list

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

Элементами списка могут быть процессы, пользователи или группы пользователей. При реализации широко применяется предоставление доступа по умолчанию для пользователей, права которых не указаны. Например, в Unix все субъекты-пользователи разделены на три группы (владелец, группа и остальные), и для членов каждой группы контролируются операции чтения, записи и исполнения (rwx). В итоге имеем ACL — 9-битный код, который является атрибутом разнообразных объектов Unix.

Концепции ACL в разных операционных системах различаются, несмотря на существующий «стандарт» POSIX. (Проекты безопасности POSIX, .1e и .2c, были отозваны, когда стало ясно что они затрагивают слишком обширную область и работа не может быть завершена, но хорошо проработанные части, определяющие ACL, были широко реализованы и известны как «POSIX ACLs».)

Мандаты возможностей. Capability list

Как отмечалось выше, если матрицу доступа хранить по строкам, то есть если каждый субъект хранит список объектов и для каждого объекта — список допустимых операций, то такой способ хранения называется «мандаты» или «перечни возможностей» (capability list) . Каждый пользователь обладает несколькими мандатами и может иметь право передавать их другим. Мандаты могут быть рассеяны по системе и вследствие этого представлять большую угрозу для безопасности, чем списки контроля доступа. Их хранение должно быть тщательно продумано.

Примерами систем, использующих перечни возможностей, являются Hydra, Cambridge CAP System [ Denning, 1996 ].

Другие способы контроля доступа

Иногда применяется комбинированный способ . Например, в том же Unix на этапе открытия файла происходит анализ ACL (операция open). В случае благоприятного исхода файл заносится в список открытых процессом файлов, и при последующих операциях чтения и записи проверки прав доступа не происходит. Список открытых файлов можно рассматривать как перечень возможностей.

Существует также схема lock-key , которая является компромиссом между списками прав доступа и перечнями возможностей. В этой схеме каждый объект имеет список уникальных битовых шаблонов (patterns), называемых locks. Аналогично каждый домен имеет список уникальных битовых шаблонов, называемых ключами (keys). Процесс, выполняющийся в домене, может получить доступ к объекту, только если домен имеет ключ, который соответствует одному из шаблонов объекта.

Читайте также:  Драйвер клавиатуры btc 8190a windows 10

Как и в случае мандатов, список ключей для домена должен управляться ОС. Пользователям не разрешается проверять или модифицировать списки ключей (или шаблонов) непосредственно. Более подробно данная схема изложена в [ Silberschatz, 2002 ].

Смена домена

В большинстве ОС для определения домена применяются идентификаторы пользователей. Обычно переключение между доменами происходит, когда меняется пользователь. Но почти все системы нуждаются в дополнительных механизмах смены домена, которые используются, когда некая привилегированная возможность необходима большому количеству пользователей. Hапример, может понадобиться разрешить пользователям иметь доступ к сети, не заставляя их писать собственные сетевые программы. В таких случаях для процессов ОС Unix предусмотрена установка бита set-uid . В результате установки этого бита в сетевой программе она получает привилегии ее создателя (а не пользователя), заставляя домен меняться на время ее выполнения. Таким образом, рядовой пользователь может получить нужные привилегии для доступа к сети.

В операционных системах Microsoft Windows и операционных системах клона Unix обычно применяется дискреционное управление доступом к объектам. Объекты разграничения доступа в Windows имеют дескриптор безопасности, содержащий информацию о владельце объекта (его идентификаторе безопасности SID, Security Identifier) и дискреционном списке управления доступом к объекту (Discretionary Access Control List, DACL), правом редактирования которого обладают владелец объекта и администратор. Владелец файла может лишить администратора права изменения разрешений на доступ к объекту. Администратор обладает специальной привилегией смены владельца на другого пользователя, обладающего такой же специальной привилегией (например, на самого себя).

Разграничение доступа к файлам и папкам возможно с помощью Проводника Windows (вкладки Безопасность функций Свойства контекстного меню выделенного объекта), принтеру – с помощью функции Принтеры и факсы Панели управления (вкладки Безопасность функции Свойства выделенного принтера), реестру Windows – с помощью Редактора реестра regedit.exe (функции Разрешения контекстного меню выделенного раздела).

Права доступа к объектам в операционной системе Windows делятся на специальные, стандартные (общие) и родовые (generic). Специальные права зависят от типа объекта разграничения доступа. Например, к файлам и папкам могут применяться следующие специальные права:

— обзор папок (выполнение файлов);

— содержание папки (чтение данных из файла);

— чтение дополнительных атрибутов;

— создание файлов (запись данных в файл);

— создание папок (дозапись данных в файл);

— запись дополнительных атрибутов;

— удаление подпапок и файлов (только для папок).

Стандартные права доступа к объектам операционной системы Windows не зависят от типа объекта. Определены следующие стандартные права доступа;

— смена разрешений (для реестра это право названо Запись DAC);

— синхронизация (для реестра это право названо Уведомление).

Индекс файла в Linux содержит информацию о владельце файла (его идентификаторе, User Identifier, UID), его первичной группе (идентификаторе группы, Group Identifier, GID) и векторе доступа к файлу. В отличие от Windows вектор доступа в Linux состоит всегда из трех элементов, определяющих права доступа к объекту трех категорий субъектов (владельца, членов его группы и всех остальных). Суперпользователь в Linux имеет полные, никем не ограничиваемые права доступа к любому объекту.

В Linux существуют только три права доступа – чтение, запись и выполнение. Для каталогов право чтения означает разрешение на просмотр содержания каталога, право записи – разрешение создания, добавления и удаления файлов в каталоге, право выполнения – разрешение на поиск файла в каталоге по его имени.

Обзор управления доступом Access Control Overview

Относится к: Applies to

  • Windows 10 Windows 10
  • Windows Server 2016 Windows Server 2016

В этом разделе для ИТ-специалистов описывается управление доступом в Windows, которое является процессом авторизации пользователей, групп и компьютеров для доступа к объектам в сети или на компьютере. This topic for the IT professional describes access control in Windows, which is the process of authorizing users, groups, and computers to access objects on the network or computer. Ключевыми понятиями, которые составляют управление доступом, являются разрешения, владение объектами, наследование разрешений, права пользователей и аудит объектов. Key concepts that make up access control are permissions, ownership of objects, inheritance of permissions, user rights, and object auditing.

Описание функции Feature description

Компьютеры с поддерживаемой версией Windows могут управлять использованием системных и сетевых ресурсов с помощью взаимосвязанных механизмов проверки подлинности и авторизации. Computers that are running a supported version of Windows can control the use of system and network resources through the interrelated mechanisms of authentication and authorization. После проверки подлинности пользователя операционная система Windows использует встроенные технологии авторизации и управления доступом для реализации второго этапа защиты ресурсов: определения, имеет ли пользователь с проверкой подлинности правильные разрешения на доступ к ресурсу. After a user is authenticated, the Windows operating system uses built-in authorization and access control technologies to implement the second phase of protecting resources: determining if an authenticated user has the correct permissions to access a resource.

Читайте также:  Efi shell как запустить windows

Общие ресурсы доступны пользователям и группам, кроме владельца ресурса, и они должны быть защищены от несанкционированного использования. Shared resources are available to users and groups other than the resource’s owner, and they need to be protected from unauthorized use. В модели управления доступом пользователи и группы (также именуемые директорами безопасности) представлены уникальными идентификаторами безопасности (SID). In the access control model, users and groups (also referred to as security principals) are represented by unique security identifiers (SIDs). Им назначены права и разрешения, которые информируют операционную систему о том, что может сделать каждый пользователь и группа. They are assigned rights and permissions that inform the operating system what each user and group can do. У каждого ресурса есть владелец, который предоставляет разрешения директорам безопасности. Each resource has an owner who grants permissions to security principals. Во время проверки контроля доступа эти разрешения проверяются, чтобы определить, какие принципы безопасности могут получить доступ к ресурсу и каким образом они могут получить к нему доступ. During the access control check, these permissions are examined to determine which security principals can access the resource and how they can access it.

Принципы безопасности выполняют действия (в том числе чтение, записи, изменение или полный контроль) на объектах. Security principals perform actions (which include Read, Write, Modify, or Full control) on objects. Объекты включают файлы, папки, принтеры, ключи реестра и объекты служб домена Active Directory (AD DS). Objects include files, folders, printers, registry keys, and Active Directory Domain Services (AD DS) objects. Общие ресурсы используют списки управления доступом (ACLs) для назначения разрешений. Shared resources use access control lists (ACLs) to assign permissions. Это позволяет руководителям ресурсов применять управление доступом следующими способами: This enables resource managers to enforce access control in the following ways:

Отказ в доступе к несанкционированным пользователям и группам Deny access to unauthorized users and groups

Установите четко определенные ограничения доступа, предоставляемого уполномоченным пользователям и группам Set well-defined limits on the access that is provided to authorized users and groups

Владельцы объектов обычно выдают разрешения группам безопасности, а не отдельным пользователям. Object owners generally grant permissions to security groups rather than to individual users. Пользователи и компьютеры, добавленные в существующие группы, принимают разрешения этой группы. Users and computers that are added to existing groups assume the permissions of that group. Если объект (например, папка) может удерживать другие объекты (например, подмостки и файлы), он называется контейнером. If an object (such as a folder) can hold other objects (such as subfolders and files), it is called a container. В иерархии объектов связь между контейнером и его контентом выражается, ссылаясь на контейнер в качестве родительского. In a hierarchy of objects, the relationship between a container and its content is expressed by referring to the container as the parent. Объект в контейнере называется ребенком, и ребенок наследует параметры управления доступом родителя. An object in the container is referred to as the child, and the child inherits the access control settings of the parent. Владельцы объектов часто определяют разрешения для контейнерных объектов, а не отдельных детских объектов, чтобы облегчить управление управлением доступом. Object owners often define permissions for container objects, rather than individual child objects, to ease access control management.

Этот набор контента содержит: This content set contains:

Оцените статью