Скрипт Powershell не читает номера телефонов AD - PullRequest
1 голос
/ 15 октября 2019

Я пытаюсь изменить форматирование группы телефонных номеров пользователя в AD. В частности, замена символов «-» на «». Тем не менее, я не могу получить доступ к существующему номеру телефона, что мне нужно сделать, чтобы заменить символы. Я понимаю, что флаг -OfficePhone в Set-ADUser устанавливает атрибут phoneNumber, который, кажется, работает, и атрибут phoneNumber там с ожидаемым значением также в Редакторе атрибутов. Однако, когда я пытаюсь получить доступ к $user.telephoneNumber, он выходит пустым.

Вот мой код, прокомментированный с тем, что работает / что не работает, и некоторыми поведениями:

foreach ($user in $users) {
    # Works. Prints out various basic attributes of user
    Write-Output $user

    # Doesn't work. Prints blank
    Write-Output $user.telephoneNumber

    # Works
    Set-ADUser -Identity $user -OfficePhone '555555555'
}

1 Ответ

2 голосов
/ 15 октября 2019

Как заявил AdminOfThings, вам необходимо сделать свойство доступным. Это можно сделать с помощью параметра -Properties в команде Get-ADUser. Вот пример:

Get-ADUser -Identity USER_NAME -Properties TelephoneNumber

Если вы хотите вернуть все свойства обратно, вы можете использовать:

Get-ADUser -Identity USER_NAME -Properties *
...