ИНФОРМАЦИЯ:
У меня возникает ситуация, когда я вынужден использовать сервер (Windows 2012 R2), который НЕ является частью домена и НЕ имеет AD. Это не мой выбор, не оптимальный, но вне моего контроля.
У меня также есть локальные пользователи, которые подключаются к этому серверу через RDP, и у локальных пользователей есть политика истечения срока действия пароля.
Поскольку AD / Exchange не является частью изображения, пользователи не получают уведомления о том, что срок действия их паролей истекает.
ПРОБЛЕМА . Проблема в том, что истек срок действия пароля пользователя, и он пытается войти в систему с помощью подключения к удаленному рабочему столу. Это не позволяет им менять свой пароль.
Я снял флажок «Разрешить подключения ТОЛЬКО с компьютеров, на которых запущен удаленный рабочий стол с аутентификацией на уровне сети» со стороны сервера, поэтому сервер НЕ требует NLA для входящих сеансов RDP.
Тем не менее, при использовании диспетчера подключений к удаленному рабочему столу Windows, кажется, принудительно NLA.
Если я использую клиент удаленного рабочего стола «Терминалы», на стороне клиента есть возможность отключить использование «Аутентификация на уровне сети». Если я отключаю NLA через клиент Terminals и подключаюсь к серверу, это позволяет мне изменить пароль пользователя с истекшим сроком действия.
ВОПРОС: Я предполагаю, возможно, неправильно, что программа Terminals просто находится поверх протоколов подключения к удаленному рабочему столу Windows, и что если вы можете отключить клиентскую часть проверки подлинности на уровне сети через программу Terminals, то вы также должны иметь возможность отключите это через встроенный диспетчер подключений к удаленному рабочему столу Windows. К сожалению, я не вижу этой опции в графическом интерфейсе диспетчера соединений и не вижу никаких параметров в файлах ".RDP", специфичных для NLA.
Если я нажимаю «О программе» в диспетчере подключений к удаленному рабочему столу на стороне клиента, он сообщает, что «Проверка подлинности на уровне сети поддерживается». Формулировка заставляет меня поверить, что использовать ее необязательно, но, опять же, я не вижу способа отключить ее в диспетчере соединений. Кстати, этот конкретный менеджер соединений v10.
Ответы:
Вы можете решить эту проблему двумя способами:
1. Установите роль RD Web Access и включите опцию удаленной смены пароля.
Следующие указания взяты из статьи woshub.com Разрешить пользователям сбрасывать просроченный пароль через RD WebAccess в Windows Server 2012 :
В Windows 2012/2012 R2 появилась опция, позволяющая удаленному пользователю изменять свой пароль (текущий или устаревший) с помощью специальной веб-страницы на сервере RD Web Access. Пароль будет изменен следующим образом: пользователь входит на веб-страницу регистрации на сервере с ролью RD Web Access и меняет свой пароль с помощью специальной формы.
Параметр удаленного изменения пароля доступен на сервере с ролью «Веб-доступ к удаленному рабочему столу», но по умолчанию он отключен. Для изменения пароля используется скрипт password.aspx , который находится в C: \ Windows \ Web \ RDWeb \ Pages \ en-US .
Чтобы включить параметр смены пароля, на сервере с настроенной ролью RD Web Access откройте консоль IIS Manager, перейдите в [Имя сервера] -> Сайты -> Веб-сайт по умолчанию -> RDWeb -> Страницы и откройте раздел Настройки приложения .
На правой панели найдите параметр PasswordChangeEnabled и измените его значение на true .
Вы можете проверить механизм смены пароля, перейдя на следующую веб-страницу:
https: //RDSServerName/RDWeb/Pages/en-US/password.aspx
Теперь при попытке подключения к серверу Веб-доступ к удаленным рабочим столам с просроченным паролем пользователь будет перенаправлен на веб-страницу password.aspx и предложит сменить пароль.
Совет . Та же функция Windows Server 2008 R2 может стать доступной после установки специального патча - KB2648402 .
2. Включить подсказки, уведомляющие пользователей об истечении срока действия пароля
gpedit.msc
на RDSH-сервере, чтобы открыть локальную групповую политикуComputer Configuration\Windows Settings\Local Policies\Security Options
источник
Оказывается, это контролируется с помощью свойства, отсутствующего в списке, в файле конфигурации .RDP, называемом «enablecredsspsupport», и, устанавливая для него значение «0», оно загружает страницу входа в сеанс RDP и позволяет пользователю изменять свой пароль с истекшим сроком действия.
Точный синтаксис, необходимый в файле конфигурации .RDP:
Если вам нужна дополнительная ссылка или чтение, перейдите сюда: Тирания аутентификации сетевого уровня и CredSSP
источник
Ни один из вариантов не работал для меня, так как у меня включен NLA. Вот способ изменить его с помощью PowerShell - полная история о том, как изменить свой пароль с истекшим сроком, когда вы не можете войти в RDP .
Просто запустите
Set-PasswordRemotely
и он задаст вам 4 вопроса - имя пользователя, старый пароль, новый пароль, контроллер домена и измените пароль для вас. Он работает и с подключенного к домену компьютера. Требуется подключение к DC.источник