Создание пользователей в AD (с запросом данных)
Доброго дня, коллеги.
Возникла необходимость передать полномочия по созданию пользователей с заполнением некоторых атрибутов ответственным людям, которые не имеют никакого отношения к IT.
В связи с этим возникла мысль написать скрипт при запуске которого будут по порядку всплывать диалоговые окна для заполнения атрибутов и/или чтобы была возможно выбора для заполнения атрибутов (уже имеющийся набор). Если кто-то сможет помочь - буду крайне признателен.
|
Цитата:
Цитата rudimko
будут по порядку всплывать диалоговые окна для заполнения атрибутов и/или чтобы была возможно выбора для заполнения атрибутов (уже имеющийся набор). »
|
Сделайте форму. Обычную форму.
|
Iska, можно поподробнее про форму? Не делал таких... )
|
Цитата:
Цитата rudimko
которые не имеют никакого отношения к IT »
|
а может просто делегировать им права на нужную OU, и будут они из GUI AD DS (или AD AC) создавать пользователей?
|
Iska, Kazun, Превосходно! Спасибо, как нарисую - напишу сюда, думаю на сл. неделе.
exo, нужное делегировано, но задачу нужно упростить "до не могу", исключить вероятность возможных ошибок и автоматизировать создание логина на основе фамилии и инициалов пользователя, тем самым сняв в себя повседневную обязанность по заведению новых учеток.
Еще раз всем спасибо, буду разбираться с новой недели.
|
Kazun, сценарий что надо, разобрал и отредактировал под свои нужны. Работает.
Но остался вопрос: samAccountName и userPrincipalName необходимо чтобы обрабатывались в транслите при вводе First Name и Last Name в кириллице. Как бы это правильно сделать? Курю дальше...
|
isazonov.wordpress.com/2012/05/17/транслитирация-имен-6/
|
Спасибо. Использовал этот:
Код:
#----------------------------------------------
#region Ф-ция транслита
#----------------------------------------------
function global:Translit {
param([string]$inString)
$Translit = @{
[char]'а' = "a"
[char]'А' = "a"
[char]'б' = "b"
[char]'Б' = "b"
[char]'в' = "v"
[char]'В' = "v"
[char]'г' = "g"
[char]'Г' = "g"
[char]'д' = "d"
[char]'Д' = "d"
[char]'е' = "e"
[char]'Е' = "e"
[char]'ё' = "yo"
[char]'Ё' = "eo"
[char]'ж' = "zh"
[char]'Ж' = "zh"
[char]'з' = "z"
[char]'З' = "z"
[char]'и' = "i"
[char]'И' = "i"
[char]'й' = "j"
[char]'Й' = "j"
[char]'к' = "k"
[char]'К' = "k"
[char]'л' = "l"
[char]'Л' = "l"
[char]'м' = "m"
[char]'М' = "m"
[char]'н' = "n"
[char]'Н' = "n"
[char]'о' = "o"
[char]'О' = "o"
[char]'п' = "p"
[char]'П' = "p"
[char]'р' = "r"
[char]'Р' = "r"
[char]'с' = "s"
[char]'С' = "s"
[char]'т' = "t"
[char]'Т' = "t"
[char]'у' = "u"
[char]'У' = "u"
[char]'ф' = "f"
[char]'Ф' = "f"
[char]'х' = "h"
[char]'Х' = "h"
[char]'ц' = "ts"
[char]'Ц' = "ts"
[char]'ч' = "ch"
[char]'Ч' = "ch"
[char]'ш' = "sh"
[char]'Ш' = "sh"
[char]'щ' = "sch"
[char]'Щ' = "sch"
[char]'ъ' = ""
[char]'Ъ' = ""
[char]'ы' = "y"
[char]'Ы' = "y"
[char]'ь' = ""
[char]'Ь' = ""
[char]'э' = "e"
[char]'Э' = "e"
[char]'ю' = "yu"
[char]'Ю' = "yu"
[char]'я' = "ya"
[char]'Я' = "ya"
}
$outCHR=""
foreach ($CHR in $inCHR = $inString.ToCharArray())
{
if ($Translit[$CHR] -cne $Null )
{$outCHR += $Translit[$CHR]}
else
{$outCHR += $CHR}
}
Write-Output $outCHR}
#endregion Function Translate
|
Кто может подсказать, как реализовать в форме строку для поиска пользователей по AD, чтобы впоследствии назначить в атрибут manager (Руководитель) и тоже самое для directReports (Подчиненные)?
|
Всем привет! Дабы не создавать новую тему, пишу в этой.
Есть скрипт для транслитерации, он отлично отрабатывает, но необходимо, чтобы он на выходе давал имя не в формате Имя Фамилия, а в формате первая буква имени точка, фамилия.
Т.е. не Ivanov Vasiliy, а v.ivanov.
Как сделать все буквы маленькими я знаю, а вот с этим вышел затык.
Код:
function global:Translit {
param([string]$inString)
$Translit= @{
[char]‘а’="a"
[char]‘А’="A"
[char]‘б’="b"
[char]‘Б’="B"
[char]‘в’="v"
[char]‘В’="V"
[char]‘г’="g"
[char]‘Г’="G"
[char]‘д’="d"
[char]‘Д’="D"
[char]‘е’="e"
[char]‘Е’="E"
[char]‘ё’="yo"
[char]‘Ё’="Yo"
[char]‘ж’="zh"
[char]‘Ж’="Zh"
[char]‘з’="z"
[char]‘З’="Z"
[char]‘и’="i"
[char]‘И’="I"
[char]‘й’="y"
[char]‘Й’="Y"
[char]‘к’="k"
[char]‘К’="K"
[char]‘л’="l"
[char]‘Л’="L"
[char]‘м’="m"
[char]‘М’="M"
[char]‘н’="n"
[char]‘Н’="N"
[char]‘о’="o"
[char]‘О’="O"
[char]‘п’="p"
[char]‘П’="P"
[char]‘р’="r"
[char]‘Р’="R"
[char]‘с’="s"
[char]‘С’="S"
[char]‘т’="t"
[char]‘Т’="T"
[char]‘у’="u"
[char]‘У’="U"
[char]‘ф’="f"
[char]‘Ф’="F"
[char]‘х’="kh"
[char]‘Х’="Kh"
[char]‘ц’="ts"
[char]‘Ц’="Ts"
[char]‘ч’="ch"
[char]‘Ч’="Ch"
[char]‘ш’="sh"
[char]‘Ш’="Sh"
[char]‘щ’="shch"
[char]‘Щ’="Shch"
[char]‘ъ’=""
[char]‘Ъ’=""
[char]‘ы’="y"
[char]‘Ы’="Y"
[char]‘ь’=""
[char]‘Ь’=""
[char]‘э’="e"
[char]‘Э’="E"
[char]‘ю’="yu"
[char]‘Ю’="Yu"
[char]‘я’="ya"
[char]‘Я’="Ya"
}
$outChars=""
foreach ($c in $inChars=$inString.ToCharArray())
{
if ($Translit[$c] -cne $Null )
{
$outChars+=$Translit[$c]
}
else
{
$outChars+=$c
}
}
Write-Output $outChars
}
$FirstName = read-host -Prompt "Имя"
$LastName = read-host -Prompt "Фамилия"
Translit $LastName, $FirstName
|
Код:
PS > (Translit "А.Петров").ToLower()
a.petrov
|
Не совсем так. Нужно из двух строк: Андрей и Петров, получить конструкцию вида: a.petrov
|
Код:
$f = "Анедрей"
$s = "Петров"
PS > (Translit "$($f[0]).$($s)").ToLower()
a.petrov
|
Время: 17:03.
© OSzone.net 2001-