Удаление компьютера делегата для использования с CredSSP

Я включил клиент CREDSSP на своем рабочем столе, чтобы разрешить удаленное взаимодействие на нескольких серверах. Некоторые из этих серверов уже выведены из эксплуатации, поэтому мой вопрос состоит в том, как мне удалить этих конкретных делегатов, не отключая и не включая CREDSSP, что я и делал до сих пор?

Например, чтобы добавить дополнительного делегата, я могу сделать:

Enable-WSManCredSSP -Role Client -DelegateComputer "mynewserver.mydomain.local"

поэтому я хочу иметь возможность сделать что-то вроде:

Remove-WSMANCredSSPDelegate -DelegateComputer "mynewserver.mydomain.local"

но все, что я могу сделать, это

Disable-WSManCredSSP -Role Client

Какие-нибудь мысли?

2 ответа

Параметры для компьютеров-делегатов хранятся в реестре в разделе HKLM:\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation\AllowFreshCredentials

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

Вот пример, который при желании должно быть легко преобразовано в командлет:

$remove = 'COMPUTER-TO-REMOVE'

$item = Get-Item 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation\AllowFreshCredentials'

$keep = $item | Select-Object -ExpandProperty 'Property' `
    | ForEach-Object { $item.GetValue($_).TrimStart('wsman/') } `
    | Where-Object { $_ -ne $remove }

Disable-WSManCredSSP -Role Client
if ($keep) {
    Enable-WSManCredSSP -Role Client -DelegateComputer $keep -Force 1>$null
}
Disable-WSManCredSSP -Role Server

а также

Disable-WSManCredSSP -Role Client

= все чисто

Другие вопросы по тегам