Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Sharepoint Заполняем Active Directory тестовыми пользователями для SharePoint RSS

Заполняем Active Directory тестовыми пользователями для SharePoint

Текущий рейтинг: 5 (проголосовало 1)
 Посетителей: 1645 | Просмотров: 3249 (сегодня 0)  Шрифт: - +

Когда вы тестируете SharePoint или любые другие продукты, использующие Active Directory, очень важно использовать большие объемы данных, приближенные к реальным. Например, если у вас в Active Directory 10 или 20 тестовых пользователей, а возможно 50 или 100 с именами типа Тест 1, Тест 2 и т.д., этого явно недостаточно.

Рассмотрим, как можно заполнить Active Directory большим (over 9000) количеством данных, максимально приближенных к реальности.

Получаем данные


Для генерации пользовательских данных воспользуемся сервисом  Fake Name Generator. У этого замечательного сервиса есть возможность сгенерировать до 50 000 пользователей за один раз. При этом можно выбрать страну, и свойства пользователей, включенные в экспортный файл.

Выбрав все свойства, вы получите файл со всеми данными по электронной почте.

Импортируем данные


Рассмотрим импорт данных из полученного ранее CSV файла с помощью PowerShell. Мы немного изменим исходные данные, и далее создадим учетные записи в Active Directory на их основе.

Сперва создадим OU («Demo Users»), куда разместим всех новых пользователей и зададим политику для паролей

Import-Module ActiveDirectory
$dn = (Get-ADDomain).DistinguishedName
$forest = (Get-ADDomain).Forest

Set-ADDefaultDomainPasswordPolicy $forest -ComplexityEnabled $false -MaxPasswordAge "1000" -PasswordHistoryCount 0 -MinPasswordAge 0

$ou = Get-ADOrganizationalUnit -Filter 'name -eq "Demo Users"'
if ($ou -eq $null) {
    New-ADOrganizationalUnit -Name "Demo Users" -Path $dn
    $ou = Get-ADOrganizationalUnit -Filter 'name -eq "Demo Users"'
}

Импортируем CSV файл в PowerShell

$data = Import-Csv .\<Имя_Вашего_Файла>.csv

Сейчас мы разместим наши данные в новый объект PowerShell. Обратите внимание, что в данном объекте используются названия параметров командлета New-ADUser, поэтому если вы хотите добавить атрибуты к аккаунтам, это нужно сделать здесь

$refineddata = $data | select  @{Name="Name";Expression={$_.Surname + ", " + $_.GivenName}},`
    @{Name="SamAccountName"; Expression={$_.Username}},`
    @{Name="UserPrincipalName"; Expression={$_.Username +"@" + $forest}},`
    @{Name="GivenName"; Expression={$_.GivenName}},`
    @{Name="Surname"; Expression={$_.Surname}},`
    @{Name="DisplayName"; Expression={$_.Surname + ", " + $_.GivenName}},`
    @{Name="City"; Expression={$_.City}},`
    @{Name="StreetAddress"; Expression={$_.StreetAddress}},`
    @{Name="State"; Expression={$_.State}},`
    @{Name="Country"; Expression={$_.Country}},`
    @{Name="PostalCode"; Expression={$_.ZipCode}},`
    @{Name="EmailAddress"; Expression={$_.EmailAddress}},`
    @{Name="AccountPassword"; Expression={ (Convertto-SecureString -Force -AsPlainText "WictorRocks!")}},`
    @{Name="OfficePhone"; Expression={$_.TelephoneNumber}},`
    @{Name="Title"; Expression={$_.Occupation}},`
    @{Name="Enabled"; Expression={$true}},`
    @{Name="PasswordNeverExpires"; Expression={$true}}

Обратите внимание, что в скрипте выше поправлены свойства Name и DisplayName, и в UPN используется DNS-имя леса. Кроме этого все пользователи активны.

Время добавить пользователей в Active Directory! Но мы не будем их добавлять в тот OU, который создали ранее. Вместо этого, создадим OU для стран пользователей. Это позволяет лучше управлять тестовыми данными и протестировать работу в разных OU

$refineddata | % {
    $subou = Get-ADOrganizationalUnit -Filter "name -eq ""$($_.Country)""" -SearchBase $ou.DistinguishedName
    if($subou -eq $null) {
        New-ADOrganizationalUnit -Name $_.Country -Path $ou.DistinguishedName
        $subou = Get-ADOrganizationalUnit -Filter "name -eq ""$($_.Country)""" -SearchBase $ou.DistinguishedName
    }
    $_ | Select @{Name="Path"; Expression={$subou.DistinguishedName}},* | New-ADUser
}

Если у вас будут какие-то ошибки во время создания пользователей, скорее всего они связаны с тем, что у некоторых из них одинаковые имена пользователей.

Результат


Зайдите в консоль управления Active Directory и посмотрите, что у вас получилось

*

Если вы выберете какой-нибудь OU, то увидите там очень много пользователей

*

При этом профиль пользователей будет заполнен

*

Заключение


Вы посмотрели как быстро и просто можно заполнить свой каталог Active Directory для тестовых сценариев.

Важно, что в случае с SharePoint может быть накладно создание излишне большого числа аккаунтов ввиду затрат на их синхронизацию и индексацию.

Автор: Дмитрий Плотников  •  Иcточник: TechNet  •  Опубликована: 20.03.2013
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER
Теги:   Active Directory, Sharepoint.


Оценить статью:
Вверх
Комментарии посетителей
Комментарии отключены. С вопросами по статьям обращайтесь в форум.