Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Charg

Ветеран


Сообщения: 2798
Благодарности: 469

Профиль | Отправить PM | Цитировать


Как лучше всего экспортировать данные введенные в гуй пользователями в csv?
Я себе это изначально представлял так:
Скрытый текст
Код: Выделить весь код
function fButtonClick {

# user-defined variables
    [string]$name           = $givenNameTextBox.text
    [string]$surname        = $snTextBox.text
    [string]$fullname       = "$surname $name"
    [string]$title          = $titleTextBox.text
    [string]$dept           = $departmentTextBox.text
    [string]$company        = $companyTextBox.text
    [string]$login          = $loginTextBox.text
    [string]$emailaddress   = "$login" + "@" + "$domainoption1"
    [string]$upn            = "$login$domainsuffix"

    $ADParams = @{
            Path = $ADPath
            Name = $fullname
            GivenName = $name
            Surname = $surname
            DisplayName = $fullname
            Company = $company
            Department = $dept
            Title = $title
            SamAccountName = $login
            EmailAddress = $emailaddress
            UserPrincipalName = $upn
            }
# save user with all params as an object inside csv
New-ADUser @ADParams -PassThru | Export-Csv -Path ("$exportPath"+'\'+"$login"+".csv") -Encoding UTF8

	}

В результате (как мне хотелось) - появлялись бы по 1-му *.csv файлу на пользователя с именем login.csv.
Но так оно не работает. Проблема в том что командлет new-aduser пробует добавить пользователя в любом случае (для того он всё-таки и нужен), а уже потом если указана опция -passthru - дополнительно шлет данные дальше по конвейеру. И получается что если у пользователя, запускающего скрипт, есть права на добавления пользователя в AD - пользователь добавляется (и шаг с экспортом\импортом становится бессмысленным), а если нету - выдает ошибку (и до экспорта дело не доходит).
Выходит я выбрал неправильный подход к экспорту данных о пользователе. А какие еще могут быть варианты?
Экспортировать я хочу объект со свойствами (1 объект = 1 пользователь), которые в дальнейшем пойдут на вход командлету new-aduser в импортирующий скрипт.

Или шаг с экспортом\импортом вообще тухлая идея и нужно просто нужным людям раздать права на добавление пользователей в AD, поставить им RSAT (чтоб модуль содержащий командлеты для работы с AD установился) и пусть добавляют напрямую из GUI в AD? Так вроде много проще но... я не знаю какие могут быть подводные камни.

Отправлено: 14:55, 14-01-2019 | #18