четверг, 16 декабря 2010 г.

Как поменять атрибут в AD: варианты

После моего сообщения о делегировании и filtered attributes я получил вопрос о болееудобных способах редактирования атрибутов (скажем, EmployeeID), чем редактор атрибутов в консоли ADUC.

Что ж, давайте посмотрим, что я смогу предложить.

ADUC

Начнем все-таки с этой консоли. Она является наиболее привычным инструментом для изменения единичного атрибута у единичной записи. 

Просто запустите эту консоль, проверьте, что включены дополнительные возможности:

image_thumb1

Потом найдите в дереве AD и откройте вкладку Attribute Editor в его свойствах:

image_thumb3

Достаточно просто, но имеет некоторые недостатки:

  • Вам необходимо найти объект в дереве AD и открыть его из его местосположения, иначе нужной вкладки в свойствах не будет. 
  • Только подумайте, что таким образом Вам нужно будет отредактировать атрибуты для, скажем, хотя бы 100 пользователей. Убийственно занимательное времяпрепровождение, да? 

ADSIEdit

Данная утилита много более мощная, чем предыдущая, однако, на самом деле использовать ее для редактирования атрибутов это как палить из пушки по воробьям. Такое же удобство. Однако кому-то может и понравиться. Все почти то же самое, но сначала Вы должны подсоединиться к Default Naming Context, потом уже найти объект и снова поменять атрибут в редакторе. Почти такое же окно и абсолютно те же проблемы. 

Active Directory Administrative Center

Это, по моему скромному мнению является наиболее подходящим инструментом для работы с одиночными объектами, навроде пользователей. К сожалению, в данном случае это сводится все к тому же ковырянию в редакторе атрибутов:

image_thumb

Из плюсов: теперь не нужно знать, где конкретно лежит объект в структуре AD, его можно просто найти поиском и тут же редактировать.

PowerShell

Я люблю PoSh. Правда. Даже несмотря на то, что я не особо умею с ним обращаться и иногда он меня подводит (возможно из-за моего незнания), я все еще могу сделать с ним оооочень многое. В нашем случае, например, мы можем назначить пользователю новый employeeID как-то так:

image_thumb[1]

Я почти уверен, что это можно сделать в одну строчку, но в данном случае такой задачи передо мной не стояло. Очевидно, что в случае со скриптами Вы можете очень многое: сделать какое-то подобие GUI, или внести массовые изменения. Достаточно гибкий и удобный метод, на самом деле. 

Ну и хватит на сегодня. Если получится, то в одной из следующих статей блога я расскажу об оставшихся способах, пришедших мне в голову.

2 комментария:

equinox комментирует...

Get-QADUser tester | Set-QADUser -ObjectAttributes @{employeeID=123456789}

Подробнее - http://powergui.org/thread.jspa?threadID=14989&tstart=0 (если нужно импортировать из экселя)

Alexander Trofimov комментирует...

С моей точки зрения это тот же PoewerShell, к которому нужно к тому же дополнительно ставить какой-то модуль. С тем же успехом для этого можно просто применить какой-нибудь специализированный софт. Я пытался рассказать, как это сделать все самостоятельно с помощью встроенных средств =)