Как добавить пользователей в Active Directory с конкретными полями через графический интерфейс - PullRequest
0 голосов
/ 15 января 2019

Я хочу добавить пользователей в Active Directory с помощью графического интерфейса. В идеале я хочу использовать PowerShell, потому что мне не нужно устанавливать дополнительное программное обеспечение, и я буду запускать его на компьютере с Windows. В идеале у меня будет форма, в которую пользователь будет вводить информацию, и она будет отправлена ​​в Active Directory. Я также согласился бы с созданием веб-сервера, например, с использованием JavaScript на внешнем интерфейсе и Node / PHP на внутреннем. Это кажется излишним и не жизнеспособным вариантом вообще, однако у меня больше опыта веб-разработки, чем у PowerShell, поэтому я не буду против этого метода, если есть такая возможность, и преимущество в том, что у меня будет сайт Я мог бы получить доступ вместо приложения. Какой язык лучше всего подходит для этой задачи, и существуют ли примеры, на которых я мог бы основывать свой код, чтобы выполнить эту задачу? Я видел примеры графического интерфейса с использованием XAML и PowerShell , а также с использованием Visual Studio для создания одного , но я не уверен, какой метод лучше.

1 Ответ

0 голосов
/ 16 января 2019

Я бы не рекомендовал разрешать пользователю вводить свои собственные данные и отправлять их прямо в активный каталог. Конечно, это будет зависеть от того, какую информацию вы запрашиваете у пользователя, и от количества полной свободы, которую вы хотите им предоставить при создании формы.

Я бы порекомендовал использовать WPF. В настоящее время я использую Visual Studios для разработки графического интерфейса пользователя (возможность видеть форму без запуска сценария powershell - это здорово, а мгновенное прерывание при ошибках позволяет мне быстро находить проблемы). Затем вы можете скопировать код XML в скрипт powershell и манипулировать / читать поля оттуда.

В качестве быстрого примера графического интерфейса в PowerShell (не гарантируется работа)

[xml]$form = @"
<Window
    Title="MainWindow" Height="900" Width="800">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <Button Name="Button" Grid.Column="0">Test</Button>
    </Grid>
</Window>
"@
$XMLreader = New-object System.Xml.XmlNodeReader $Form
$XMLForm = [Windows.Markup.XamlReader]::load($XMLreader)
$button= $XMLForm.FindName("Button")

$Button.add_Click({...code to execute on click...})

$XMLForm.ShowDialog()

Все в переменной $Form копируется из проекта Visual Studio WPF. Затем вы можете назначить скрипты и код, которые будут выполняться при выполнении определенных действий, как показано на $Button.add_Click({})

В противном случае вы могли бы также использовать некоторые старые добрые Windows Forms для создания простого графического интерфейса, но я не использовал его некоторое время, поэтому у меня нет примера кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...