Я пытаюсь прагматично (используя powershell) привязать каталог AD LDS (ADAM) и изменить пароль пользователя.
Я пытался использовать этот командлет
Set-ADAccountPassword -Identity $identity -Server 'localhost:389' -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "$password" -Force);
, который работает нормально, если я использую его вручную, но не работает, если выполняется службой, даже если служба работает от имени того же пользователя, что и при запуске вручную. Если у кого-то есть идеи, почему это так, я буду признателен.
function JICSpwd {
Param(
[string]$username,
[string]$password
)
if ($username -and $password) {
if ($username -notmatch '^\d+$'){
$id_num = $(getID $username);
} else {
$id_num = $username;
}
try {
if ($id_num){
$identity = "CN=$id_num,OU=PortalUsers,CN=Portal,O=Jenzabar,C=US";
Set-ADAccountPassword -Identity $identity -Server 'my.domain.edu:389' -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "$password" -Force);
Write-Log -Message "Successfully updated JICS password ($id_num)";
}
} catch [Exception] {
Write-Log -Message "Failed to update JICS password ($username)" -Level Warn;
Write-Log -Message "---> $_.Exception.GetType().FullName, $_.Exception.Message" -Level Warn;
}
}
}