• Система защиты должна реализовывать мандатный принцип контроля доступа применительно ко всем объектам при явном и скрытом доступе со стороны любого из субъектов:
• - субъект может читать объект, только если иерархическая классификация в классификационном уровне субъекта не меньше, чем иерархическая классификация в классификационном уровне объекта. При этом иерархические категории в классификационном уровне субъекта должны включать в себя все иерархические категории в классификационном уровне объекта;
• - субъект осуществляет запись в объект, только если классификационный уровень субъекта в иерархической классификации не больше, чем классификационный уровень объекта в иерархической классификации. При этом все иерархические категории в классификационном уровне субъекта должны включаться в иерархические категории в классификационном уровне объекта.
• Реализация мандатных ПРД должна предусматривать возможность сопровождения, изменения классификационных уровней субъектов и объектов специально выделенными субъектами.
• В СВТ должен быть реализован диспетчер доступа, т.е. средство, во-первых, осуществляющее перехват всех обращений субъектов к объектам, а во-вторых, разграничивающее доступ в соответствии с заданным принципом разграничения доступа. При этом решение о санкционированности запроса на доступ должно приниматься только при одновременном разрешении его и дискреционными, и мандатными ПРД. Таким образом, должны контролироваться не только единичный акт доступа, но и потоки информации.
Практика показывает, что многоуровневые модели защиты находятся гораздо ближе к потребностям реальной жизни, нежели матричные модели, и представляют собой хорошую основу для построения автоматизированных систем разграничения доступа. Причем, так как отдельно взятые категории одного уровня равнозначны, то, чтобы их разграничить наряду с многоуровневой (мандатной) моделью, требуется применение матричной модели. С помощью многоуровневых моделей возможно существенное упрощение задачи администрирования. Причем это касается как исходной настройки разграничительной политики доступа (не требуется столь высокого уровня детализации задания отношения субъект-объект), так и последующего включения в схему администрирования новых объектов и субъектов доступа.
3.3. Модель разграничения информационных потоков
Модель разграничения информационных потоков основана на разделении всех возможных информационных потоков между объектами системы на два непересекающихся множества: множество благоприятных информационных потоков и множество неблагоприятных информационных потоков. Цель реализации модели разграничения информационных потоков состоит в том, чтобы обеспечить невозможность возникновения в компьютерной системе неблагоприятных информационных потоков.
Модель разграничения информационных потоков в большинстве случаев используется в сочетании с механизмами другого вида, например с моделями дискреционного или мандатного разграничения доступа. Реализация модели разграничения информационных потоков, как правило, на практике является трудной для решения задачей, особенно, если необходимо обеспечить защиту компьютерной системы от возникновения неблагоприятных информационных потоков по времени.
3.4. Модель ролевого разграничения доступа
Ролевое разграничение доступа является развитием политики дискреционного разграничения доступа; при этом права доступа субъектов системы на объекты группируются с учетом специфики их применения, образуя роли.
Задание ролей позволяет определить более четкие и понятные для пользователей компьютерной системы правила разграничения доступа. Ролевое разграничение доступа позволяет реализовать гибкие, изменяющиеся динамически в процессе функционирования компьютерной системы правила разграничения доступа. На основе ролевого разграничения доступа, в том числе, может быть реализовано мандатное разграничение доступа.
3.5. Модель изолированной программной среды
Целью реализации модели изолированной программной среды является определение порядка безопасного взаимодействия субъектов системы, обеспечивающего невозможность воздействия на систему защиты и модификации ее параметров или конфигурации, результатом которых могло бы стать изменение реализуемой системой защиты политики разграничения доступа.
Модель изолированной программной среды реализуется путем изоляции субъектов системы друг от друга и путем контроля порождения новых субъектов таким образом, чтобы в системе могли активизироваться только субъекты из предопределенного списка. При этом должна контролироваться целостность объектов системы, влияющих на функциональность активизируемых субъектов.
4. Система разграничения прав доступа к корпоративным ресурсам БГУ.
Корпоративная информационная среда Белорусского государственного университета состоит из нескольких десятков приложений и сервисов, написанных в разное время. Большая часть из них представляет собой объекты ActiveX, оставшиеся – web-приложения. Все они в большинстве случаев независимы и не имеют встроенных средств для организации взаимодействия. В данном случае, очевидным является выбор ролевой модели доступа, которая является развитием дискреционной модели разграничения доступа. Реализация какой-либо другой модели в условиях корпоративной информационной системы Белорусского государственного университета является почти невозможной.
Разграничение доступа к столь разнородным и слабоинтегрированным системам может быть построено путём выделения пользователем прав на доступ к тем или иным приложением на основании их членства в соответствующих группах на контроллере домена, а также прав на исполнение хранимых процедур на серверах баз данных, с использованием которых работают все компоненты информационной системы.
Сравнивая представленные системы, можно сказать, что в ERP система берёт на себя всю полноту ответственности за аутентификацию и авторизацию пользователей. Кроме традиционной парольной аутентификации, она предлагает широкий спектр других механизмов, предоставляемых различными моделями корпоративной информационной системы.
Система безопасности слабоинтегрированной информационной системы возлагает процедуры аутентификации и авторизации на встроенные средства контроллера домена Microsoft Windows, чем значительно уменьшает затраты на свою эксплуатацию и обеспечивает достаточно надёжное функционирование. Однако средства управления пользователями Microsoft Windows не ориентированы на такое использование, поэтому являются не вполне удобными при контроле за распределением доступа, что негативно влияет на безопасность корпоративной информационной системы.
Из вышесказанного следует, что приложение, которое сможет централизованно управлять правами пользователей на досутп к тем или иным приложениям существенно упростит работу администраторов корпоративной информационной системы БГУ, а также позволит более тщательно отслеживать права пользователя на доступ к данным различных приложений. Что в свою очередь, очевидно, приведёт к существенному улучшению работы системы безопасности.
Таким образом, передо мной стояла задача создания такой системы. Рассмотрим подробнее особенности решения такой задачи.
При проектировании такой системы необходимо учесть некоторые особенности, необходимые для нормального функционирования как самого приложения в частности, так и всей корпоративной информационной системы в целом.
Поскольку система управления пользователями в Windows Active Directory может использоваться не только для предоставления доступа к ресурсам корпоративной информационной системы БГУ, поэтому в работе приложения стоит учитывать это, чтобы пользователи не потеряли права, которые им действительно необходимы и не получили лишних полномочий. Для этого в системе организован механизм хранения априорных прав пользователя, которые были присвоены ему не данной системой управления доступом, а при используя средства Windows Active Directory.
Похожая ситуация складывается и в разделе управления пользователями на SQL серверах. Однако, как говорилось выше, механизм разграничения прав доступа БГУ при доступе к ресурсам SQL сервера построена по ролевому признаку, а значит, нет необходимости хранить данные о правах доступа пользователя к каждому из объектов того или иного SQL сервера. Все эти данные хранятся в правах группы на сервере. Таким образом, системе управления доступом достаточно хранить только такие поля как название сервера, название самой базы данных, а так же название роли пользователя.
Обратимся подробнее к системе распределения доступа.
Данная система представляет собой web-приложение, реализованное средствами ASP.NET 1.1 и использующее сервер баз данных Microsoft SQL Server 2000 SP3.
База данных состоит из следующих таблиц:
· Основные таблицы
o Users – хранит идентификатор объекта пользователя, имя пользователя, его логин и, если это необходимо, дополнительную текстовую информацию.
o Applications – хранит в себе идентификатор приложения, его название и, если это необходимо, дополнительную текстовую информацию.
o WinADGroups – хранит идентификатор объекта группы, её название, и, если это необходимо, дополнительную текстовую информацию.
o SQLGroups - хранит идентификатор группы, её название, имя сервера, базы данных а также роль, которые сопоставлены данной группе и, если это необходимо, дополнительную текстовую информацию.