close

Вход

Забыли?

вход по аккаунту

?

4. Приложения

код для вставкиСкачать
 Приложение А
Интерфейс Active Directory
Рисунок А.1 - Интерфейс Active Directory
Приложение Б
Техническое задание
1 Введение
Программа "Active Directory Program" предназначена для использования предприятиями, сети которых работают под управлением ОС Windows Server с использованием компонента Active Directory Domain Services и связанными с ним службами. Программа является утилитой, позволяющей переносить структуру из файла непосредственно в контроллер домена сети.
2 Назначение разработки
Программа "Active Directory Program":
* Автоматизирует процесс переноса иерархической структуры компании на логику корпоративной сети не зависимо от ее сложности (количества объектов и их вложенности);
* Автоматизирует процесс переноса сотрудников компании, соблюдая их рабочее место и должность, а также заполнение данных профиля сотрудника (дата рождения, адрес, телефон и т.д.);
* Вывод структуры Active Directory.
3 Требования к программе или программному изделию
К программе предъявлены следующие требования:
* Вывод всей отладочной информации (ошибки, информация о количестве объектов, справочная информация);
* Выбор домена для переноса структуры на контроллере домена текущей сети;
* Выбор шаблона для генерации логинов на основании фамилии, имени, отчества, табельного номера;
* Автоматическая генерация пароля в соответствии с требованиями безопасности (не менее 8 символов, как минимум одна цифра, одна прописная и одна заглавная буквы).
3.1 Требования к функциональным характеристикам
Программа предназначена для работы с администрированием корпоративной сети, поэтому в первую очередь она предназначена администраторам таких сетей. В отличие от обычного пользователя администратору предоставляется возможность редактирования таблиц коэффициентов.
Программы должна выполнять следующие функции:
* Считывание структуры компании из файла. При возникновении ошибок чтения файла выводить всю информацию пользователю.
* Перенос структуры, считанной из файла, на контроллер домена. При возникновении ошибок выводить информацию пользователю.
* Вывод дерева Active Directory с контроллера домена.
3.2 Требования к входным и выходным данным
Требования к входным данным приведены в Таблице А.1. Таблица А.1 - Входные данные программы
Название Тип ОписаниеСтруктурное подразделениеСтрокаНазвание отдела с полным путем в иерархии отделов компанииДолжность/профессияСтрокаОбязанности сотрудникаТаб. №СтрокаУникальный табельный номерФ.И.О.СтрокаПолное имя сотрудникаКол-во ед.СтрокаКоличество единиц. ВедомостьСтрокаОтдел, за которым закреплен сотрудник Входной файл представлен в виде Excel-файла (*.lsx, *.xlsx). На выходе программа выводит информацию о переносе структуры, а также предлагает просмотреть дерево Active Directory после проделанных изменений.
3.3 Требования к надежности
В программе должна присутствовать проверка входной информации на соответствие типов и соответствие структурной корректности. В случае возникновения ошибок предусмотреть возможность вывода информативных диагностических сообщений. Программа должна выводить текущее состояние обработки информации на любом этапе (чтение из файла, перенос структуру на контроллер домена) в индикатор процесса.
3.4 Требования к составу и параметрам технических средств
Программа выполняет достаточно большое количество вычислений, от чтения файла, до обращения к базе данных домена контроллеров. Поэтому рекомендуется запускать данную программу на компьютерах средней мощности (процессор более 1 ГГц, оперативная память не менее 1 Гб, к видеокарте, свободному дисковому пространству программа не требовательна).
3.5 Требования к информационной и программной совместимости
Программа должна функционировать на компьютере с установленной серверной операционной системой семейства Windows и платформой .Net Framework не ниже 2 версии. Так как входным файлом является Excel-файл, на компьютере должен быть установлен MS Excel версии соответствующей версии входного файла.
3.6 Требования к программной документации
Программная документация должна быть представлена руководством пользователя и встроенной справочной системой.
4 Стадии и этапы разработки
1) изучение основы компьютерных сетей под управлением ОС Windows;
2) изучение компонента Active Directory Domain Services и соответствующих служб;
3) анализ предметной области;
4) написание основного кода;
5) тестирование и отладка;
6) доработка программы в соответствии со всеми требованиями технического задания;
7) документирование.
5 Приложения
Разработка ведется на основании информации:
1) Пространства имен System.DomainServices и System.DomainServices.ActiveDirectory c официального сайта компании Microsoft (msdn.microsoft.com);
2) Дэн Холме "Учебный курс Microsoft. Настройка Active Directory Windows Server 2008".
Приложение В
Иерархия целей и задач
Рисунок Б.1 - Иерархия целей
Рисунок Б.2 - Иерархия задач
Приложение Г
Функциональная диаграмма
Рисунок В.1 - Функциональная диаграмма
Приложение Д
Модульная структура программы
Рисунок Д.1 - Модульная структура программы
Таблица Д.1 - Описание функций основных модулей
МодульНазначениеMainГлавная форма программыADTreeФорма для вывода дерева Active DirectoryExcelFileReaderКласс для чтения Excel-файлаBNodeКласс, реализующий узел дереваBTreeКласс, реализующий деревоBTreeIteratorКласс, реализующий итератор для чтения дереваActiveDirectoryClassКласс для работы с компонентом ActiveDirectoryDataМодуль для хранения глобальных данных Приложение Е
Код основных методов для работы с Active Directory
// Создать новую учетную запись
public string CreateUserAccount(string ldapPath, string userLogin, string userPassword, string fullName, string job, string tab_number, string statement, string department)
{ string oGUID = string.Empty;
if (!Searcher(userLogin)) try
{
string connectionPrefix = "LDAP://" + ldapPath;
DirectoryEntry dirEntry = new DirectoryEntry(connectionPrefix);
DirectoryEntry newUser = dirEntry.Children.Add("CN=" + userLogin, "user");
newUser.Properties["userPrincipalName"].Value = userLogin; // Логин newUser.Properties["samAccountName"].Value = userLogin; // Логин
newUser.Properties["displayName"].Value = fullName; // ФИО newUser.Properties["title"].Value = job; // Должность
if (statement != "")
newUser.Properties["department"].Value = statement; // Ведомость
newUser.Properties["company"].Value = Data.CorpName; // Компания
newUser.Properties["description"].Value = tab_number; // Таб. №
newUser.Properties["physicalDeliveryOfficeName"].Value = department;//Отдел newUser.CommitChanges();
oGUID = newUser.Guid.ToString();
newUser.Invoke("SetPassword", new object[] { userPassword });
newUser.Properties["pwdLastSet"].Value = "0"; // Временный пароль
newUser.CommitChanges();
dirEntry.Close();
newUser.Close();
}
catch (Exception ex)
{
string exceptiotStr = "В ходе выполнения функции CreateUserAccount класса ActiveDirectoryClass возникла ошибка.\r\n Данные о учетной записи: Логин: " + userLogin + " Пользователь: " + fullName + "; Ведомость: " + statement + "; Отдел: " + department + "; Должность: " + job + "\r\n Дополнительная информация: " + ex.ToString(); return exceptiotStr;
}
else
{
string exceptiotStr = "В ходе выполнения функции CreateUserAccount класса ActiveDirectoryClass возникла ошибка: Лгин " + userLogin + " уже существует!\r\n Пользователь: " + fullName + "; Ведомость: " + statement + "; Отдел: " + department + "; Должность: " + job;
return exceptiotStr;
}
return "";
}
// Создание подразделения
// Пример: Path = "OU=USERS, DC=contoso, DC=com"
// Внимание: максимальная длина имени 64 символа
public string CreateOU(string path, string name)
{
try
{
if (!DirectoryEntry.Exists("LDAP://OU=" + name + "," + path))
{
DirectoryEntry entry = new DirectoryEntry("LDAP://" + path);
DirectoryEntry ou = entry.Children.Add("OU=" + name, "OrganizationalUnit");
ou.CommitChanges();
}
else
{
string exceptiotStr = "В ходе выполнения функции CreateOU класса ActiveDirectoryClass возникла ошибка: Подразделение " + name + " по пути" + path + " уже существует!";
return exceptiotStr;
}
}
catch (Exception ex)
{
string exceptiotStr = "В ходе выполнения функции CreateOU класса ActiveDirectoryClass возникла ошибка.\r\n Данные о подразделении: Название " + name + ", иерархия" + path + ". \r\n Дополнительная информация: " + ex.ToString();
return exceptiotStr;
}
return "";
}
Приложение Ж
Акт приема/сдачи программного продукта
Наименование программного продукта: "Active Directory Program".
Заказчик: ОАО "Ростелеком"
Адрес заказчика: г. Чита, ул. Чайковского, д. 24
Исполнители: Муратов Иван Игоревич, Перфильев Алексей Александрович
Адреса исполнителей: г. Чита, ул. Чкалова, д.33, кв. 45,
пос. Дарасун, ул. Читинская, д. 65.
Заказчик в лице начальника управления информационных технологий ОАО "Ростелеком" Бакшеев А.В. принял программный продукт с дальнейшим сопровождением и модернизацией.
Дата принятия: "____" ____________ 2012 г.
Подписи сторон
Заказчик ______________________ Бакшеев А.В.
Исполнители
______________________ Муратов И.И.
______________________ Перфильев А.А.
Приложение З
Руководство пользователя
После запуска приложения открывается главное окно программы, в котором пользователь может с помощью контекстного меню либо вывести дерево Active Directory, либо перенести структуру из файла на контроллер доменов.
Рисунок З.1 - Главное окно программы
Рисунок З.2 - Дерево Active Directory
Если пользователь выбирает пункт меню для переноса структуры из файла в ActiveDirectory на контроллере домена. Сначала ему открывается диалоговое окно, в котором пользователь выбирает файл. После этого начинается чтения файла.
Рисунок З.3 - Чтение файла
После того как файл прочитан, пользователь выбирает домен, на который будет осуществлен перенос, и шаблон для генерации логинов, т.е. правила по которым будет создаваться логин для каждого сотрудника.
Рисунок З.4 - Выбор домена и шаблона для генерации логинов
После выбора домена и шаблона логинов начинается перенос структуры из памяти на контроллер доменов.
Рисунок З.5 - Перенос данных на контроллер домена
После завершения обработки данных пользователю будет предложена просмотреть результат переноса в дереве Active Directory. Также все возникшие ошибки будут выведены в окно главной программы.
Далее программу можно завершать или начать новый перенос структуры на контроллер доменов. 22
Документ
Категория
Без категории
Просмотров
44
Размер файла
547 Кб
Теги
приложение
1/--страниц
Пожаловаться на содержимое документа