Встроенный клиент Windows Remote Desktop (mstsc.exe
) позволяет сохранять имя пользователя и пароль, используемые для подключения к удаленному компьютеру. Благодаря этому пользователю не нужно каждый раз вводить пароль для подключения к известному узлу Remote Desktop. В этой статье мы рассмотрим, как разрешить использование сохраненных учетных данных для RDP-подключений в Windows и что делать, если пользователи не могут использовать сохраненные пароли для подключений к удаленному рабочему столу (пароль запрашивается каждый раз).
Разрешить делегирование сохраненных учетных данных для RDP-подключения через GPO
По умолчанию Windows позволяет пользователям сохранять свои пароли для RDP-соединений. Для этого пользователь должен ввести имя компьютера RDP, имя пользователя и установить флажок «Разрешить сохранять учетные данные». в окне клиента Remote Desktop Connection (mstsc.exe). После того как пользователь нажмет кнопку «Подключиться«, RDP-сервер запрашивает пароль, и Windows сохраняет его в Credential Manager (а не в файле .RDP).
При следующем подключении к удаленному узлу RDP под тем же пользователем клиент автоматически получит сохраненный пароль из диспетчера учетных данных Windows и будет использовать его для аутентификации RDP.
Если для этого компьютера сохранен пароль, в окне клиента RDP появится следующее сообщение:
Saved credentials will be used to connect to this computer. You can edit or delete these credentials.
По умолчанию Windows не позволяет пользователю использовать сохраненный пароль RDP (учетные данные) для подключения с компьютера, подключенного к домену Active Directory, к узлу, находящемуся в другом домене или рабочей группе. Хотя пароль подключения хранится в Credentials Manager, Windows не позволяет его использовать и требует от пользователя каждый раз вводить пароль. Кроме того, Windows не позволяет использовать сохраненный пароль RDP, если вы подключаетесь с локальной учетной записью, а не с доменной.
В этом случае при попытке подключения с использованием сохраненного пароля RDP появляется сообщение об ошибке:
Your credentials did not work Your system administrator does not allow the use of saved credentials to log on to the remote computer CompName because its identity is not fully verified. Please enter new credentials.
Windows считает соединение небезопасным, поскольку между этим компьютером и удаленным компьютером в другом домене (или рабочей группе) нет доверия.
Вы можете изменить эти параметры на компьютере, с которого вы пытаетесь установить RDP-соединение:
- Откройте редактор локальной групповой политики, нажав
Win + R
-> gpedit.msc; - В редакторе GPO перейдите по адресу Конфигурация компьютера -> Административные шаблоны -> Система -> Делегирование учетных данных. Найдите политику с именем Разрешить делегирование сохраненных учетных данных с аутентификацией только на сервере NTLM;
- Включите политику и нажмите кнопку Показать;
- Укажите список удаленных узлов, которым разрешено использовать сохраненные учетные данные при доступе по RDP. Список удаленных компьютеров должен быть указан в следующем формате:
TERMSRV/server1
— разрешить использовать сохраненные учетные данные для доступа к определенному компьютеру/серверу по RDP;TERMSRV/*.woshub.com
— разрешить устанавливать RDP-соединения с сохраненными учетными данными со всеми компьютерами в домене woshub.com;TERMSRV/*
— разрешить использовать сохраненный пароль для подключения к любому удаленному компьютеру.Совет. Обязательно введитеTERMSRV
ключевое слово в верхнем регистре. Имя компьютера должно точно совпадать с именем, указанным в поле подключения клиента RDP.
- Аналогичным образом включите и добавьте свои значения TERMSRV/ в поле Разрешить делегирование сохраненных учетных данных политика;
Следующие параметры реестра соответствуют вышеуказанным параметрам GPO:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation] "AllowSavedCredentialsWhenNTLMOnly"=dword:00000001 “AllowSavedCredentials”=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation\AllowSavedCredentialsWhenNTLMOnly] "1"="TERMSRV/*" [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation\AllowSavedCredentials] "1"="TERMSRV/*" [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Microsoft\Windows\CredentialsDelegation] “AllowSavedCredentialsWhenNTLMOnly”=dword:00000001 “AllowSavedCredentials”=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Microsoft\Windows\CredentialsDelegation\AllowSavedCredentialsWhenNTLMOnly] "1"="TERMSRV/*" [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Microsoft\Windows\CredentialsDelegation\AllowSavedCredentials] "1"="TERMSRV/*"
- Проверьте, отключен ли следующий параметр Сетевой доступ: Не разрешать хранить пароли и учетные данные для проверки подлинности в сети (Конфигурация компьютера -> Параметры Windows -> Параметры безопасности -> Локальные политики -> Параметры безопасности). Если этот параметр включен, пользователь будет получать ошибку при попытке сохранить пароль в хранилище Credential Manager:
Credential Manager Error Unable to save credentials. To save credentials in this vault, check your computer configuration. Error code: 0x80070520 Error Message: A specified logon session does not exist. It may already have been terminated.
- Проверьте, что Запрет делегирования сохраненных учетных данных политика отключена (или не настроена). Запрещающие политики GPO имеют приоритет над разрешающими;
- Сохраните изменения и обновите параметры GPO с помощью этой команды:
gpupdate /force
Теперь при подключении к узлу RDP клиент mstsc сможет использовать сохраненные учетные данные.
Вы можете перечислить сохраненные пароли для RDP-соединений с помощью команды:
cmdkey /list ^| findstr "target=TERMSRV"
Чтобы очистить сохраненные пароли подключений, выполните команду:
For /F "tokens=1,2 delims= " %G in ('cmdkey /list ^| findstr "target=TERMSRV"') do cmdkey /delete %H
Вы можете изменить политику сохранения учетных данных RDP только на локальном компьютере с помощью редактора локальной групповой политики. Если вы хотите применить эти параметры на нескольких компьютерах в домене, используйте GPO домена, настроенный с помощью gpmc.msc
(Управление групповой политикой).
Почему Windows не сохраняет учетные данные удаленного рабочего стола?
Если вы настроили Windows в соответствии с приведенными выше инструкциями, но ваш RDP-клиент по-прежнему просит ввести пароль при каждой попытке подключения, стоит проверить следующее:
- Нажмите «Показать параметры» в окне Подключение к удаленному рабочему столу и убедитесь, что «Всегда запрашивать учетные данные» опция не отмечена;
- Если вы используете файл .RDP для подключения, убедитесь, что значение ‘запрашивать учетные данные‘ параметр равен 0 (
prompt for credentials:i:0
); - Откройте редактор локальных GPO (
gpedit.msc
) и перейдите в раздел Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Connection Client. На странице Не разрешайте сохранять пароли и Запрос учетных данных на клиентском компьютере» параметры должны быть не установлены или отключены. Также убедитесь, что этот параметр политики отключен в результирующей групповой политике на вашем компьютере (вы можете создать HTML-отчет с примененными параметрами GPO с помощью команды gpresult); - Удалите все сохраненные пароли из диспетчера учетных данных Windows. Введите
control userpasswords2
и в Учетные записи пользователей перейдите в окно Дополнительно вкладку и нажмите Управление паролями; - В следующем окне выберите Учетные данные Windows. Найдите все сохраненные пароли RDP и удалите их (они начинаются с
TERMRSV/…
).В этом окне вы можете вручную добавить учетные данные для RDP-соединений. Обратите внимание, что имя RDP-сервера/компьютера должно быть указано в полеTERMRSV\server_name1
формате. Не забудьте удалить сохраненные пароли при очистке истории RDP-соединений на вашем компьютере. - Вы не сможете войти в систему с сохраненными учетными данными RDP, если удаленный сервер давно не обновлялся, и при попытке подключения к нему возникает ошибка CredSSP encryption oracle remediation.
После этого пользователи смогут использовать сохраненные пароли для RDP-подключений.
Политика аутентификации сервера не разрешает подключение с сохраненными учетными данными
При подключении к хосту RDP или ферме RDS с использованием сохраненных учетных данных может возникнуть ошибка:
Windows Security Your credentials did not work The server’s authentication policy does not allow connection requests using saved credentials. Please enter new credentials.
В этом случае необходимо отключить параметр GPO «Всегда запрашивать пароль при подключении» на удаленном сервере (Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Security).
Если эта политика включена, хост RDP всегда запрашивает у клиента пароль для подключения.
Эту опцию можно отключить через реестр:
REG add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fPromptForPassword /t REG_DWORD /d 0 /f
Windows Defender Credential Guard не разрешает сохранять учетные данные
После обновления до Windows 11 22H2 пользователи стали жаловаться на то, что теперь они не могут использовать сохраненные пароли для RDP-соединений:
Windows Security: Your credentials did not work Windows Defender Credential Guard does not allow using saved credentials. Please enter your credentials.
Windows Defender Remote Credential Guard (появившийся в Windows 10 1607) призван защищать учетные данные для RDP-соединений. По умолчанию Windows 11/10 22H2 позволяет использовать сохраненные учетные данные только при использовании аутентификации Kerberos на хосте RDP. Если вы не можете использовать Kerberos (контроллер домена недоступен или вы подключаетесь к узлу в рабочей группе), Remote Credential Guard блокирует аутентификацию NTLM.
Эту проблему можно решить, отключив Credential Guard в реестре:
New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\LSA" -Name "LsaCfgFlags" -PropertyType "DWORD" -Value 0 -Force