В любой организации, где есть домен, встает вопрос его администрирования.
Самые распространенные задачи:
Классические варианты решения: Для автоматизации процесса администрирования домена нами была написана программа AD_MNGMNT. В основу легли постулаты: Первоначальная решаемая задача: синхронизация кадровой подсистемы с доменом (сопоставление учетных записей с сотрудниками). Программа написана на C# с использованием FrameWork XAF. В домене создается Organization Unit (OU), внутри которого повторяется структура штатного расписания с помощью подчиненных OU, каждый OU это подразделение в который перемещаются пользователи/сотрудники согласно штатной расстановки. Например, структура подразделений следующая: 01 — головное подразделение с подчиненными 000 и 099, в котором 513, далее 942, 943, 944, 968 и т.д. На рисунке представлена структура OU При создании нового отдела в кадровой подсистеме программа генерирует в домене OU и группы автоматически. В каждом OU создаются группы доступа и рассылки, которые являются членами групп вышестоящих OU. Пользователи автоматически привязываются к группе внутри OU. Например: есть отделы 099, 513, 942. Пользователи отдела 942 входят в группу доступа «Доступ. Подразделение 942», она, в свою очередь, входит в группу «Доступ. Подразделение 513» и т.д. Далее права по папкам/программам и т.д. определяем группами доступа и тем самым получаем автоматическое распределение прав пользователей при приеме на работу или перемещении по службе сотрудников. Например, можно дать вышестоящему отделу права на общую папку, нижестоящие подразделения получают эти права автоматически, т.к. входят в эту группу. Аналогичная ситуация с группами рассылки. При увольнении происходит автоматическая блокировка учетной записи, она выводится из всех групп и перемещается в OU для уволенных, и ставится комментарий с датой увольнения. Домен синхронизируется не с кадровой системой, а c данными из БД программы. Тем самым мы не зависим от смежных систем. Сотрудники, структура штатного расписания и все соответствия объектов хранятся в БД программы. Пример штатной единицы: Пример карточки сотрудника: Пример журнала: Кроме домена через данную программу очень хорошо синхронизируются различные системы у которых есть свой API или доступ к БД. Например, настроена и работает синхронизация между системами: Пример измерения алкорамок по сотруднику: В итоге мы получаем: WEB-интерфейс по функциональности ничем не отличается от стандартного. Пример WEB-интерфейса
Пример скриптов: