Нет, нет официального "CentOS пути" к руководящим пользователям в LDAP. Который является немного приводящим в бешенство, начиная со значения по умолчанию useradd/usermod/etc. инструменты только работают со значением по умолчанию/etc/passwd схема. Официальный сервер LDAP является openldap, и существуют некоторые основные доступные инструменты командной строки, но ничто, что является out-of-the-box простой в использовании для управления пользователями. Мы используем веб-систему под названием Gosa, другая популярная опция является сценариями собственной разработки, созданными сверху инструментов LDAP командной строки.
этот код powershell изменит сервисную информацию об учетной записи для любого номера служб. В этой версии список получен из файла, но это могло быть легко изменено для получения по запросу от AD. Также обратите внимание cna изменение многочисленных услуг когда-то. В этом изменении случая фильтр, чтобы просто быть "-фильтруют "name=SSRS". я также указываю имя учетной записи. Я не положителен, что это требуется, но я никогда не делал этого без имени учетной записи также. Для многих сервисов также требуется сервисный перезапуск и для которого необходимо не прокомментировать строки перезапуска.
$account="domain\userName"
$password="password"
$computers = get-content servers.txt
$svcs = gwmi win32_service -filter "name='myservice' and name='myservice2' and name='myservice3'" -computerName $computers
foreach($s in $svcs)
{
$s.change($null,$null,$null,$null,$null,$null,$account,$password,$null,$null,$null)
# optional service restart
# $s.stopservice
# $s.startservice
}
Можно использовать класс управления WMI SMO, который, предположительно, заботится о любых специальных полномочиях.
[reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.SqlWmiManagement")
$wmi = new-object ("Microsoft.SqlServer.Management.Smo.Wmi.ManagedComputer") $env:computername
$wmi.services | where {$_.Type -eq 'ReportServer'} | foreach {$_.SetServiceAccount('contoso\mylogin','mypassword')}