Обновление свойств пользователя Active Directory в Active Directory с помощью Powershell
В среде Windows Server 2003 R2, использующей Powershell v2.0, как можно дублировать функциональность Set-QADUser для обновления свойств пользователей в Active Directory, таких как их номер телефона и заголовок?
Хитрость здесь в том, что я хотел бы сделать это независимо от Set-QADUser, и у меня пока нет возможности использовать командлеты Server 2008.
Благодарю.
2 ответа
Решение
Собирая вещи из Интернета, я придумал это...
function Get-ADUser( [string]$samid=$env:username){
$searcher=New-Object DirectoryServices.DirectorySearcher
$searcher.Filter="(&(objectcategory=person)(objectclass=user)(sAMAccountname=$samid))"
$user=$searcher.FindOne()
if ($user -ne $null ){
$user.getdirectoryentry()
}
}
$user = Get-ADUser 'UserName'
# Output all properties
$user.psbase.properties
# Change some properties
$user.title = 'New Title'
$user.telephoneNumber = '5555551212'
$user.SetInfo()
# Output the results
$user.title
$user.telephoneNumber
Дополнительная информация
Вы захотите использовать объекты ADSI в PowerShell. Синтаксис будет похож на vbscript, потому что вы используете тот же компонент.