Студопедия — Разработка алгоритма программы
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Разработка алгоритма программы






Перечень функций, которые будет выполнять программный продукт:

1. Установка прав доступа на каталоги, в которых располагаются ресурсы.

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

3. Динамическое получение пользователей и групп из АD, т.к. аутентификация пользователей происходит через АD.

В соответствии с функциями был разработан алгоритм программного средства управления доступом, который представлен на рисунке 3.5.

 

Рисунок 3.5 – Алгоритм программного средства назначения прав доступа

Согласно разработанному алгоритму, программное средство работает следующим образом: сначала устанавливается время запуска программы, после чего программа ожидает значения установленного времени, как только значение становится заданному, программа производит запрос списка каталогов, расположенных на файловом сервере. При первом запуске создается файл содержащий список каталогов на сервере. Содержимое данного файла сравнивается с полученным результатом запроса, в случае появления новых каталогов, производится добавление в файл списка каталогов. Далее осуществляется запрос к АD, для получения списка пользователей и групп. После этого производится сопоставление каталогов и пользователей. Результат сопоставления записывается в отдельный файл. Используя результаты сопоставления, записанные в отдельный файл, производится редактирование списков АСL.

Процесс сопоставления прав пользователям и группам осуществляется согласно модели разграничения прав доступа. Алгоритм данного процесса представлен на рисунке 3.6.

Сначала производится загрузка полученных списков групп «k» и пользователей «l». Таким образом, что каждому пользователь «l» входи в группу «k», т.е. записывается в виде массива:

группа1; пользователь 1;

группа1; пользователь 2;

группа1; пользователь n-1;

группа2; пользователь n;

группа2; пользователь n+1;

группа m; пользователь x.

Потом среди пользователей определяется администратор, имя этого пользователя записывается в отдельную переменную «о», и так же переменной «р» присваивается права доступа «f», что определяет этому пользователю полный доступ на все ресурсы сервера.

Полученные результаты поиска администратора записываются в переменный файл с массивом:

группа1; пользователь 1; администратор; «f»;

группа1; пользователь 2; администратор; «f»;

группа1; пользователь n-1; администратор; «f»;

группа2; пользователь n; администратор; «f»;

группа2; пользователь n+1; администратор; «f»;

группа m; пользователь x; администратор; «f»;

 

Рисунок 3.6 – Алгоритм разграничения прав доступа

 

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

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

группа1; пользователь 1; путь 1; администратор; «f»;

группа1; пользователь 2; путь 2; администратор; «f»;

группа1; пользователь n-1; путь n-1; администратор; «f»;

группа2; пользователь n; путь n; администратор; «f»;

группа2; пользователь n+1; путь n+1; администратор; «f»;

группа m; пользователь x; путь x; администратор; «f»;

Затем пути разбиваются на уровни вложенности каталогов:

Х:/а/b/c/…

Каждому уровню вложенности соответствует права на доступ для конкретной группы, т.е. в рассматриваемом предприятии существует 3 группы: директор, начальник отдела, сотрудник (рисунок 3.2). В зависимости от этого пользователь, состоящий в определенной группе, имеет ряд прав на собственный каталог и другие каталоги, не принадлежащие ему, конечно кроме пользователей являющимися рядовыми сотрудниками. Соответственно независимо от прав на свой каталог, две первые группы имеют права на каталоги, уровни, вложенности которых соответствуют их группе, т.е. у первой группы есть права на каталоги уровень вложенности которых равен «а», и все каталоги ниже этого уровня, второй группе «b» и все каталоги ниже, но в зависимости от отдела. Для начальника все просто, пользователь являющийся начальником имеет права на корневой каталог, а вот для начальников отдела не все так просто, в их полномочия должны входить права на каталоги принадлежащие отделу, начальником которого является пользователь. поэтому производится дополнительная выборка каталогов, на которые имеют права доступа пользователи состоящие в группе начальники отдела. Для этого из пути принадлежащего пользователю, предварительно разбитого на уровни вложенности, в переменную «х» записывается значение уровня вложенности «b» и производится поиск вхождения «х» в список всех каталогов. Теперь известны пути к каталогам, которые находятся в юрисдикции начальников отделов. Осталось только дописать эти пути в массив, путем добавления новой строки в массив и еще дописать соответствующие права доступа для групп:

группа1; пользователь 1; каталог 1; права 1; администратор; «f»;

группа2; пользователь 2; каталог 1; права 2; администратор; «f»;

группа2; пользователь 2; каталог 2; права 2; администратор; «f»;

группа2; пользователь 3; каталог 3; права 2; администратор; «f»;

группа2; пользователь n-1; каталог n-1; права 2; администратор; «f»;

группа2; пользователь n; каталог n; права 2; администратор; «f»;

группа2; пользователь n+1; каталог n+1; права 2; администратор; «f»;

группа 3; пользователь x; каталог x; права 3; администратор; «f»;

Теперь сопоставив пользователей, каталоги, и права пользователей на каталоги, можно приступа к применению прав доступа. Для этого используется алгоритм применения прав доступа, представленный на рисунке 3.7.

Применение прав осуществляется с помощью программы сасls.exe. данная программа встроена в ОС Microsoft Windows. Синтаксис данной программы имеет следующий вид:

cacls имя_файла [/t] [/e] [/c] [/g пользователь: разрешение] [/r пользователь [...]] [/p пользователь: разрешение [...]] [/d пользователь [...]]

 

 

Рисунок 3.7 – Алгоритм применения прав пользователям

 

Параметры

имя_файла

Обязательный параметр. Вывод избирательных таблиц управления доступом (DACL) указанных файлов.

/t

Изменение избирательных таблиц контроля доступа (DACL) указанных файлов в текущем каталоге и всех подкаталогах.

/e

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

/c

Продолжение внесения изменений в избирательные таблицы управления доступом (ACL) с игнорированием ошибок.

/g пользователь: разрешение

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

Если пользователи являются доменными пользователями, то необходимо указать домен в котором состоит пользователь. Для этого параметр пользователь записывается в виде:

домен/пользователей.

 







Дата добавления: 2015-10-15; просмотров: 624. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Принципы, критерии и методы оценки и аттестации персонала   Аттестация персонала является одной их важнейших функций управления персоналом...

Пункты решения командира взвода на организацию боя. уяснение полученной задачи; оценка обстановки; принятие решения; проведение рекогносцировки; отдача боевого приказа; организация взаимодействия...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Дренирование желчных протоков Показаниями к дренированию желчных протоков являются декомпрессия на фоне внутрипротоковой гипертензии, интраоперационная холангиография, контроль за динамикой восстановления пассажа желчи в 12-перстную кишку...

Деятельность сестер милосердия общин Красного Креста ярко проявилась в период Тритоны – интервалы, в которых содержится три тона. К тритонам относятся увеличенная кварта (ув.4) и уменьшенная квинта (ум.5). Их можно построить на ступенях натурального и гармонического мажора и минора.  ...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия