Инструкция по использованию программы "Массовое обновление пользователей Active Directory"

Last modified by root_xwiki on 2025/10/30 07:12

 


Инструкция по использованию программы "Массовое обновление пользователей Active Directory"

Вы правы! Вот дополнение к инструкции с разделом установки зависимостей:


0. Установка программы и зависимостей

Системные требования

  • Операционная система: Windows 10/11, Linux, macOS
  • Python: версия 3.7 или выше
  • Доступ к сети: подключение к серверу corp.tcax.ru
  • Права: права администратора домена для полного функционала

Шаг 1: Установка Python

Если Python не установлен:

Windows:

  1. Скачайте установщик с https://www.python.org/downloads/
  2. Запустите установщик
  3. Важно! Поставьте галочку "Add Python to PATH"
  4. Нажмите "Install Now"

Linux (Ubuntu/Debian):

 

bash

sudo apt update sudo apt install python3 python3-pip

Linux (CentOS/RHEL):

 

bash

sudo yum install python3 python3-pip

Шаг 2: Установка зависимостей

Windows:

text

pip install PyQt5==5.15.10 pandas==2.1.3 openpyxl==3.1.2 ldap3==2.9.1

Linux/macOS:

bash

pip3 install PyQt5==5.15.10 pandas==2.1.3 openpyxl==3.1.2 ldap3==2.9.1

Или без указания версий (установит последние):

bash

pip install PyQt5 pandas openpyxl ldap3

С использованием python -m pip (если pip недоступен напрямую):

bash

python -m pip install PyQt5==5.15.10 pandas==2.1.3 openpyxl==3.1.2 ldap3==2.9.1

Создайте файл requirements.txt со следующим содержимым:

text

PyQt5==5.15.10 pandas==2.1.3 openpyxl==3.1.2 ldap3==2.9.1

Установите зависимости одной командой:

Windows:

 

text

pip install -r requirements.txt

Linux/macOS:

 

bash

pip3 install -r requirements.txt

Или установите пакеты по отдельности:

 

bash

pip install PyQt5 pip install pandas pip install openpyxl pip install ldap3

Описание зависимостей

БиблиотекаВерсияНазначение
PyQt55.15.10Графический интерфейс программы
pandas2.1.3Работа с Excel файлами и таблицами данных
openpyxl3.1.2Чтение и запись файлов Excel (.xlsx)
ldap32.9.1Подключение и работа с Active Directory

Шаг 3: Проверка установки

Запустите следующую команду для проверки:

 

bash

python -c "import PyQt5; import pandas; import openpyxl; import ldap3; print('Все зависимости установлены успешно!')"

Если команда выполнилась без ошибок - всё готово к использованию!

Шаг 4: Запуск программы

Windows:

 

text

python ad_bulk_update.py

Linux/macOS:

 

bash

python3 ad_bulk_update.py

Возможные проблемы при установке

Проблема 1: "pip не является внутренней или внешней командой"

Решение:

 

bash

python -m pip install -r requirements.txt

Проблема 2: Ошибка при установке PyQt5

Решение для Linux:

 

bash

sudo apt install python3-pyqt5 python3-pyqt5.qtwidgets

Проблема 3: Ошибка доступа (Permission denied)

Решение:

 

bash

pip install --user -r requirements.txt

Проблема 4: Конфликт версий

Решение: Используйте виртуальное окружение:

Windows:

 

text

python -m venv venv venv\Scripts\activate pip install -r requirements.txt

Linux/macOS:

 

bash

python3 -m venv venv source venv/bin/activate pip install -r requirements.txt

Структура файлов проекта

После установки у вас должны быть следующие файлы:

 

text

ad_bulk_update/ ├── ad_bulk_update.py # Основной файл программы ├── requirements.txt # Список зависимостей ├── ad_bulk_update_config.json # Настройки (создается автоматически) ├── ad_columns_config.json # Настройки столбцов (создается автоматически) └── README.md # Данная инструкция

Создание исполняемого файла (опционально)

Для создания .exe файла (Windows) без необходимости установки Python:

  1. Установите PyInstaller:
 

bash

pip install pyinstaller

  1. Создайте исполняемый файл:
 

bash

pyinstaller --onefile --windowed --name="AD Bulk Update" ad_bulk_update.py

  1. Готовый файл будет в папке dist/

Быстрый старт (для опытных пользователей)

 

bash

# Клонирование или создание проекта mkdir ad_bulk_update cd ad_bulk_update # Создание requirements.txt echo "PyQt5==5.15.10 pandas==2.1.3 openpyxl==3.1.2 ldap3==2.9.1" > requirements.txt # Установка зависимостей pip install -r requirements.txt # Копирование файла ad_bulk_update.py (все 3 части кода) # Запуск python ad_bulk_update.py


Обновление зависимостей

Для обновления всех библиотек до последних версий:

 

bash

pip install --upgrade -r requirements.txt


Примечание: Рекомендуется использовать указанные версии библиотек для обеспечения стабильной работы программы. Более новые версии могут содержать изменения API, которые потребуют модификации кода.

Параметры подключения к Active Directory

LDAP сервер: corp.tcax.ru
Пользователь: tcax\it_zolotov
Base DN: OU=TCAX,DC=corp,DC=tcax,DC=ru


1. Первоначальная настройка

Шаг 1: Запуск программы

  1. Запустите файл ad_bulk_update.py
  2. Откроется главное окно программы с 4 вкладками

Шаг 2: Настройка подключения

  1. Перейдите на вкладку "⚙️ Настройки подключения"
  2. Заполните параметры подключения:

    • LDAP сервер: corp.tcax.ru
    • Пользователь: tcax\it_zolotov
    • Пароль: введите ваш пароль
    • Base DN: OU=TCAX,DC=corp,DC=tcax,DC=ru

Шаг 3: Проверка подключения

  1. Нажмите кнопку "Проверить подключение"
  2. Дождитесь сообщения об успешном подключении
  3. Нажмите "💾 Сохранить настройки" для сохранения параметров

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


2. Работа с пользователями AD (ручное редактирование)

Загрузка пользователей

  1. Перейдите на вкладку "👥 Пользователи AD"
  2. При необходимости измените LDAP фильтр или используйте быстрые фильтры:

    • Все пользователи - загрузить всех пользователей
    • Активные - только активные учетные записи
    • Отключенные - только заблокированные учетные записи
  3. Нажмите "🔍 Загрузить пользователей из AD"
  4. Дождитесь завершения загрузки

Настройка отображаемых столбцов

  1. Нажмите кнопку "⚙️ Настроить столбцы"
  2. Выберите атрибуты для отображения в таблице
  3. Используйте кнопки:

    • Выбрать все - показать все доступные атрибуты
    • Снять все - скрыть все атрибуты
    • По умолчанию - стандартный набор (логин, имя, email, должность, отдел, телефон, табельный номер)
  4. Нажмите OK для применения

Поиск пользователей

  • Используйте поле "Быстрый поиск" для фильтрации по любым атрибутам в таблице
  • Поиск работает в реальном времени

Действия с пользователями

Создание нового пользователя

  1. Нажмите "➕ Создать пользователя"
  2. Заполните обязательные поля (помечены *):

    • Имя
    • Фамилия
    • Логин (только латиница)
    • Пароль (минимум 8 символов)
    • OU (путь создания)
  3. При необходимости используйте кнопку "Сгенерировать пароль"
  4. Заполните дополнительные поля (email, должность, отдел и т.д.)
  5. Настройте параметры учетной записи:

    • ✓ Включить учетную запись после создания
    • ✓ Пароль не истекает
    • ✓ Требовать смену пароля при входе
  6. Нажмите OK

Редактирование пользователя

  1. Выберите пользователя в таблице (один клик)
  2. Дважды кликните по строке ИЛИ нажмите кнопку "✏️ Редактировать"
  3. В открывшемся окне измените нужные атрибуты
  4. Счетчик покажет количество изменений
  5. Нажмите Save для сохранения

Активация пользователей

  1. Выберите одного или нескольких пользователей (удерживайте Ctrl для множественного выбора)
  2. Нажмите "✅ Активировать"
  3. Подтвердите действие
  4. Дождитесь завершения операции

Блокировка пользователей

  1. Выберите одного или нескольких пользователей
  2. Нажмите "🚫 Заблокировать"
  3. Подтвердите действие
  4. Дождитесь завершения операции

Экспорт пользователей

  1. Нажмите "📊 Экспорт"
  2. Выберите место сохранения файла
  3. Все загруженные пользователи будут экспортированы в Excel со всеми атрибутами

3. Массовая загрузка из Excel

Шаг 1: Подготовка Excel файла

Создайте Excel файл со следующей структурой:

  • Первая строка - названия столбцов
  • Один столбец должен содержать уникальный идентификатор (логин, email, табельный номер)
  • Остальные столбцы - данные для обновления

Пример:

ЛогинИмяФамилияEmailДолжностьОтделТелефон
ivanovИванИвановivanov@tcax.ruИнженерIT-отдел+7 (123) 456-78-90

Шаг 2: Загрузка файла

  1. Перейдите на вкладку "📊 Массовая загрузка из Excel"
  2. В разделе "Шаг 1" нажмите "📂 Выбрать Excel файл"
  3. Выберите подготовленный файл
  4. Проверьте превью данных (первые 10 строк)

Шаг 3: Настройка сопоставления

  1. В разделе "Шаг 2" выберите:

    • Столбец идентификатора - столбец из Excel с уникальным значением
    • Атрибут AD - по какому атрибуту искать пользователей (обычно sAMAccountName)
  2. Настройте сопоставление полей:

    • Нажмите "🔮 Автосопоставление" для автоматического сопоставления
    • ИЛИ вручную для каждой строки:

      • Выберите столбец Excel
      • Выберите соответствующий атрибут AD
      • Поставьте галочку ✓ для использования
  3. Используйте кнопки управления:

    • ➕ Добавить поле - добавить новое сопоставление
    • ➖ Удалить выбранное - удалить строку сопоставления
    • 🗑️ Очистить все - снять все галочки

Шаг 4: Проверка

  1. Нажмите "✓ Проверить и подготовить к загрузке"
  2. Проверьте информацию о сопоставлении
  3. Если все корректно - переходите к следующему шагу

4. Выполнение массового обновления

Запуск обновления

  1. Перейдите на вкладку "▶️ Выполнение обновления"
  2. Проверьте информацию о задаче
  3. Нажмите "▶ Выполнить обновление"
  4. ВНИМАНИЕ! Подтвердите действие - данные в AD будут изменены!

Мониторинг процесса

  • Прогресс-бар покажет текущий статус выполнения
  • В окне лога отображается информация о каждом пользователе:

    • ✓ Успешно обновлен
    • ✗ Ошибка обновления
    • ⚠ Не найден в AD
    • ⊘ Пропущен

Экспорт результатов

  1. После завершения обновления нажмите "📊 Экспортировать лог в Excel"
  2. Выберите место сохранения
  3. В файле будут содержаться:

    • Идентификатор пользователя
    • Статус обновления
    • Описание ошибок (если были)
    • Список измененных полей

5. Часто используемые атрибуты AD

Основная информация

  • givenName - Имя
  • sn - Фамилия
  • displayName - Отображаемое имя
  • cn - Полное имя
  • description - Описание

Контактная информация

  • mail - Email
  • telephoneNumber - Телефон
  • mobile - Мобильный телефон
  • ipPhone - IP телефон

Адрес

  • streetAddress - Улица
  • l - Город
  • st - Область/Регион
  • postalCode - Почтовый индекс

Организационная информация

  • title - Должность
  • department - Отдел
  • company - Компания
  • employeeID - Табельный номер
  • physicalDeliveryOfficeName - Офис

Дополнительные атрибуты

  • extensionAttribute1-15 - Расширенные атрибуты (для пользовательских данных)

6. Советы и рекомендации

Безопасность

  1. Всегда делайте резервную копию перед массовыми изменениями
  2. Сначала протестируйте на небольшой группе пользователей
  3. Используйте экспорт лога для документирования изменений
  4. Не сохраняйте пароль в настройках

Производительность

  1. При загрузке большого количества пользователей используйте фильтры
  2. Настройте видимые столбцы для ускорения отображения
  3. Используйте быстрый поиск вместо прокрутки таблицы

Устранение проблем

  1. Если пользователь не найден - проверьте:

    • Правильность идентификатора
    • Корректность Base DN
    • Наличие пользователя в указанном OU
  2. При ошибках подключения:

    • Проверьте доступность сервера corp.tcax.ru
    • Убедитесь в правильности учетных данных
    • Проверьте сетевое подключение
  3. При ошибках обновления:

    • Проверьте права доступа учетной записи
    • Убедитесь в корректности формата данных
    • Изучите детали ошибки в экспортированном логе

7. Горячие клавиши и быстрые действия

  • Двойной клик по пользователю - открыть для редактирования
  • Ctrl + клик - множественный выбор пользователей
  • Shift + клик - выбор диапазона пользователей
  • Поле быстрого поиска - фильтрация в реальном времени

Контакты технической поддержки

При возникновении проблем обращайтесь к администратору IT-отдела.

Программа разработана для: TCAX
Версия: 2.0
Дата: Октябрь 2025


ВНИМАНИЕ! Программа вносит изменения в Active Directory. Используйте с осторожностью и только при наличии соответствующих прав доступа.