Что не является объектом операционной системы Windows

Обновлено: 02.07.2024

Операционная система – это программа, которая действует как интерфейс между программным обеспечением и компьютерным оборудованием.

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

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

Цели операционной системы

Цели операционной системы —

Чтобы сделать компьютерную систему удобной и эффективной.

Чтобы скрыть информацию об аппаратных ресурсах от пользователей.

Чтобы предоставить пользователям удобный интерфейс для использования компьютерной системы.

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

Для управления ресурсами компьютерной системы.

Чтобы отслеживать, кто какой ресурс использует, разрешать запросы ресурсов и обрабатывать конфликтующие запросы от разных программ и пользователей.

Чтобы обеспечить эффективное и справедливое распределение ресурсов между пользователями и программами.

Характеристики операционной системы

Вот список некоторых наиболее характерных особенностей операционных систем.

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

Управление процессором — выделяет процессор (ЦП) для процесса и освобождает процессор, когда он больше не требуется.

Управление устройствами — отслеживает все устройства. Это также называется контроллером ввода-вывода, который решает, какой процесс получит устройство, когда и на сколько времени.

Управление файлами — распределяет и освобождает ресурсы и решает, кто получит ресурсы.

Безопасность — предотвращает несанкционированный доступ к программам и данным с помощью паролей и других подобных методов.

Учет заданий — отслеживает время и ресурсы, используемые различными заданиями и/или пользователями.

Контроль за производительностью системы — записывает задержки между запросом на услугу и от системы.

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

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

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


Мне любопытно, почему это не было сделано. Разве объектно-ориентированные методологии не лучше процедурных? Разве они не должны были уже сделать один, соответствующий методологиям OO? Есть ли какой-то недостаток в использовании OO, о котором я не знаю? Изменить: надеюсь, стало немного понятнее


У нас есть один! Это называется Smalltalk! (хотя он работает только на виртуальных машинах, а не на «голом железе»).

Обратите внимание, однако, что люди все больше скептически относятся к преимуществам объектно-ориентированных методологий. Возьмем в качестве примера растущую популярность Go, главное преимущество которого перед Java (имхо) в том, что он не является объектно-ориентированным. Говоря словами Пола Грэма:

Фраза "объектно-ориентированный" означает много вещей. Половина очевидна, а другая половина - ошибки.

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

И в чем преимущества такой ОС? Разработчики приложений, скорее всего, не увидят разницы, поскольку они уже могут прекрасно писать объектно-ориентированный код в не-ОО операционных системах, взаимодействуя с ОС через объектно-ориентированный интерфейс. Предположительно, кодовая база вашей ОС будет чище (хотя это очень субъективно), но это, вероятно, произойдет за счет снижения производительности. И ОС — это та часть программного обеспечения, которая не должна работать медленно (поскольку любая другая программа будет работать так же быстро, как и ОС, медленная ОС означает медленное все).< /p>

Что вы ожидаете от него?

Ничего особенного.Я продолжаю читать и слышать, что объектно-ориентированные методологии «лучше» и «более эффективны» и т. д., и мне интересно, почему они не применяются к ОС.

Стоит отметить, что в Linux используется много объектно-ориентированных концепций, хотя он написан на C.

Нет никаких практических причин, по которым Linux нельзя было бы реализовать на современном C++, но если вы пытаетесь запустить ОС на множестве различных аппаратных устройств, лучше всего по-прежнему использовать C.

Это. Большая часть Linux является объектно-ориентированной. Драйверы устройств Linux являются объектами, вам просто нужно вручную передать указатель this.

Я могу придумать несколько важных причин.

Во-первых, зрелые системы, с которыми знакомы люди, довольно стары (с точки зрения вычислений), и большая их часть была разработана до того, как объектно-ориентированные технологии стали зрелыми и широко распространенными.

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

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

Объектно-ориентированное программирование — это инструмент. Цель программы не в том, чтобы быть объектно-ориентированной. Он предназначен для решения поставленной задачи, а также является кратким, понятным, достаточно быстрым для этой цели, не требует излишнего заполнения ОЗУ и, возможно, некоторых других вещей. Эти цели оцениваются по-разному в зависимости от проблемы и периода времени; по мере того как компьютеры становились быстрее и имели больше оперативной памяти, программисты предпочитали краткость и понятность другим факторам.

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

Если вы определяете ООП с точки зрения компонентов, отправляющих сообщения друг другу, то вы можете взглянуть на микроядра, которые работают аналогичным образом. Это говорит о том, что было немного попыток микроядер, которые вошли в мейнстрим. Linux с самого начала намеренно отказался быть одним из них. NT начала таким образом, а затем отступила. Mach является ядром нескольких систем, но не более того.

Объектная ориентация чаще всего обсуждается в контексте языков программирования. Я предполагаю, что вас интересует ОС со свойствами объектно-ориентированного программирования, а не та, которая написана на языке объектно-ориентированного программирования, но на самом деле никоим образом не раскрывает этот факт.

Как упоминалось другими, объектно-ориентированный подход может быть разным и реализуется по-разному в разных местах. Вы можете возразить, что значительная часть UNIX является объектно-ориентированной: базовой единицей многих вещей в UNIX является файл, и операции выполняются над файлами. Вы можете рассматривать дескриптор файла как объект, а операции как методы для этого объекта. Другие системные вызовы (API, предоставляемый приложению ядром) совсем не отличаются, например, от системных подпрограмм в Java: они по сути являются процедурными, потому что нет объекта, на котором вы их используете, но они были помещены в пространство имен в класс System. как статические методы (которые на самом деле ничем не отличаются от процедурного кода, они просто не называют его процедурным).

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

Возможно, вас заинтересует операционная система Plan9 (а также различные ответвления и адаптации, такие как Inferno). Plan9 также не называет себя объектно-ориентированным, но они взяли идею UNIX о том, что «все является файлом» (что на самом деле не верно для UNIX, это просто одна из фундаментальных концепций) и расширили ее, чтобы она была на самом деле красивой. много правды. В Plan9 вы получаете доступ практически ко всему, включая сетевые подключения, через файловую систему и выполняя операции с файлами. В зависимости от вашей точки зрения, это делает Plan9 гораздо более объектно-ориентированным, чем UNIX. (На самом деле я не использую Plan9, но идея интригует.)

Что такое "дескриптор" при обсуждении ресурсов в Windows? Как они работают?


7 ответов 7

Это абстрактное значение ссылки на ресурс, часто память, открытый файл или конвейер.

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

В качестве альтернативы в качестве дескриптора может быть указан реальный указатель, когда автор API хочет, чтобы пользователь API был изолирован от специфики того, на что указывает возвращаемый адрес; в этом случае следует учитывать, что то, на что указывает дескриптор, может измениться в любое время (от версии API к версии или даже от вызова к вызову API, который возвращает дескриптор) - поэтому дескриптор следует рассматривать как просто непрозрачное значение имеет значение только для API.

Должен добавить, что в любой современной операционной системе даже так называемые "настоящие указатели" по-прежнему являются непрозрачными дескрипторами пространства виртуальной памяти процесса, что позволяет операционной системе управлять памятью и переупорядочивать ее, не делая указатели недействительными. в процессе.

Имеет ли смысл значение дескриптора? Я имею в виду, что если значение одного дескриптора меньше другого, означает ли это, что дескриптор был создан раньше, чем другой?

HANDLE – это контекстно-зависимый уникальный идентификатор. Под контекстно-зависимым я подразумеваю, что дескриптор, полученный из одного контекста, не обязательно может использоваться в любом другом произвольном контексте, который также работает с HANDLE s.

Например, GetModuleHandle возвращает уникальный идентификатор загруженному в данный момент модулю. Возвращенный дескриптор можно использовать в других функциях, которые принимают дескрипторы модуля. Его нельзя передать функциям, которым требуются дескрипторы других типов. Например, вы не можете передать дескриптор, возвращаемый GetModuleHandle, в HeapDestroy и ожидать, что он сделает что-то разумное.

Сам HANDLE — это всего лишь интегральный тип. Обычно, но не обязательно, это указатель на базовый тип или место в памяти. Например, HANDLE, возвращаемый GetModuleHandle, на самом деле является указателем на базовый адрес виртуальной памяти модуля. Но нет правила, утверждающего, что дескрипторы должны быть указателями. Дескриптор также может быть просто целым числом (которое может использоваться некоторыми API Win32 в качестве индекса в массиве).

HANDLE — это преднамеренно непрозрачные представления, обеспечивающие инкапсуляцию и абстракцию от внутренних ресурсов Win32. Таким образом, API-интерфейсы Win32 потенциально могут изменить базовый тип, стоящий за HANDLE, без какого-либо влияния на пользовательский код (по крайней мере, такова идея).

Рассмотрите эти три различные внутренние реализации API Win32, которые я только что создал, и предположим, что Widget является структурой .

В первом примере представлены внутренние сведения об API: он позволяет пользовательскому коду узнать, что GetWidget возвращает указатель на структуру Widget . Это имеет несколько последствий:

  • код пользователя должен иметь доступ к заголовочному файлу, определяющему структуру виджета
  • код пользователя потенциально может изменить внутренние части возвращаемой структуры виджета

Оба этих последствия могут быть нежелательными.

Второй пример скрывает эту внутреннюю деталь от пользовательского кода, возвращая просто void * . Коду пользователя не требуется доступ к заголовку, определяющему структуру Widget.

Третий пример точно такой же, как и второй, но вместо этого мы просто называем void * a HANDLE. Возможно, это препятствует тому, чтобы пользовательский код пытался выяснить, на что именно указывает void *.

Зачем проходить через эту проблему? Рассмотрим этот четвертый пример более новой версии того же API:

Обратите внимание, что интерфейс функции идентичен третьему примеру выше. Это означает, что пользовательский код может продолжать использовать эту новую версию API без каких-либо изменений, даже несмотря на то, что "закулисная" реализация изменилась и вместо нее используется структура NewImprovedWidget.

Описатели в этом примере на самом деле представляют собой просто новое, предположительно более понятное имя для void * , которое является именно тем, чем является HANDLE в Win32 API (поищите его в MSDN). Он обеспечивает непрозрачную стену между кодом пользователя и внутренними представлениями библиотеки Win32, что повышает переносимость между версиями Windows кода, использующего Win32 API.

Домен 5: Управление идентификацией и доступом (Контроль доступа и управление идентификацией)

Эрик Конрад, . Джошуа Фельдман, учебное пособие CISSP (третье издание), 2016 г.

Управление дискреционным доступом (DAC)

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

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

Сбор информации

Дискретный контроль доступа

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

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

Что такое федеративное удостоверение?

Деррик Раунтри, Federated Identity Primer, 2013 г.

2.3.2 Дискреционный контроль доступа

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

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

В большинстве операционных систем ПК используется модель MAC. На рис. 2.3 показан пример из системы Windows 8. Вы можете увидеть ACL для одной из папок в системе.

< бр />

Рис. 2.3 . Окно разрешений папки Windows 8.

Системами DAC обычно легче управлять, чем системами MAC. Ненадежная административная модель ложится меньшим бременем на администратора. Администратор не несет ответственности за настройку разрешений для каждой системы.

Системы DAC могут быть немного менее безопасными, чем системы MAC. Отчасти это связано с распределенной моделью управления. Поскольку администратор не контролирует доступ ко всем объектам, возможно, что разрешения могут быть установлены неправильно, что может привести к утечке информации. Администратор может обойти это, настроив группу систем, которыми будет управлять только администратор. Эти системы можно использовать для хранения более конфиденциальной информации.

Введение в общие концепции безопасности

Дискреционный контроль доступа (DAC)

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

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

В большинстве операционных систем ПК используется модель MAC. На рис. 1.11 показан пример из системы Windows 7. Вы можете увидеть список контроля доступа для одной из папок в системе.

< бр />

Рисунок 1.11. Окно разрешений папки Windows 7.

Системами DAC обычно легче управлять, чем системами MAC. Ненадежная административная модель ложится меньшим бременем на администратора. Администратор не несет ответственности за настройку разрешений для всех систем.

Системы DAC могут быть немного менее безопасными, чем системы MAC. Отчасти это связано с распределенной моделью управления. Поскольку администратор не контролирует доступ ко всем объектам, возможно, что разрешения могут быть установлены неправильно, что может привести к утечке информации. Администратор может обойти это, настроив группу систем, которыми будет управлять только администратор. Эти системы можно использовать для хранения более конфиденциальной информации.

Авторизация и контроль доступа

Методологии контроля доступа

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

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

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

Добравшись до места работы, мы можем использовать значок или ключ (что-то, что у вас есть), чтобы войти в здание, опять же, физический контроль доступа.

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

Модели управления доступом

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

Дискретный контроль доступа

Дискреционный контроль доступа (DAC) – это модель контроля доступа, основанная на том, что доступ определяется владельцем рассматриваемого ресурса. Владелец ресурса может решать, у кого есть доступ, а у кого нет, и какой именно доступ им разрешен. В операционных системах Microsoft мы видим реализованный DAC. Например, если мы решим создать сетевую папку, мы сами решим, кому разрешить доступ.

Обязательный контроль доступа

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

Информационная безопасность

Дискретный контроль доступа

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

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

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

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

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

Дискретный контроль доступа

Дискреционный контроль доступа (DAC), также известный как права доступа к файлам, представляет собой контроль доступа в системах Unix и Linux. Всякий раз, когда вы видели синтаксис drwxr-xs-x, это аббревиатура ugo для владельца, группы и других разрешений в списке каталогов. Ugo — это аббревиатура для пользовательского доступа, группового доступа и доступа других системных пользователей соответственно. Эти права доступа к файлам настроены так, чтобы разрешать или запрещать доступ членам их собственной группы или любых других групп. Модификация файла, каталога и устройств осуществляется с помощью команды chmod. Таблицы 11.1 и 11.2 иллюстрируют синтаксис для назначения или удаления разрешений. Разрешения могут быть назначены с использованием символьного формата:

Таблица 11.1. Нотация для добавления, удаления доступа и явного назначения доступа.

Таблица 11.2. Обозначение прав доступа к файлам.

rРазрешение на чтение файла
Разрешение на чтение каталога (также требуется 'x')
w Разрешение на удаление или изменение файла
Разрешение на удаление или изменение файлов в каталоге
xРазрешение на выполнение файла/скрипта
Разрешение на чтение каталога (также требуется ' r')
sУстановить идентификатор пользователя или группы при выполнении
uРазрешения, предоставленные пользователю, которому принадлежит файл
t< /em>Установить закрепленный бит. Выполнить файл/скрипт от имени пользователя root для обычного пользователя

Chmod [ugoa] [+−=] [rwxXst] fileORdirectoryName

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

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

Управление дискреционным доступом (DAC) для электронных медицинских карт

DAC – это первая из политик, обсуждаемых в этом разделе. Это зависит от особенностей клиента, а также от характерных ассоциаций. Право входа обычно основывается на одобренной клиентом проверке, которая, в свою очередь, основана на классах, отправленных на утверждение, и на личности контроллера, который выбирает, одобрять или отказывать в доступе к приложению. Владелец объекта изображает тему, которая может передать объект, так что полное использование элемента может быть выбрано администратором объекта [11,13]. Этот вид контроля доступа, как правило, менее безопасен, чем обязательный контроль доступа, хотя это хорошо известная структура в операционных системах организации. Хотя он менее безопасен, он прост в использовании и более универсален, чтобы соответствовать ситуациям, которые не требуют серьезного состояния предметов. Структура ЦАП показана на рис.4. Наиболее важным элементом, который может вызвать проблемы в системе, является то, что владелец может передать свою должность кому-то другому.

 Рис. 4

Рис. 4 . Модель ЦАП для ЭУЗ.

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

Читайте также: