Single Sign-On ( SSO — технология единого входа) это технология, которая позволяет уже аутентифицированному (вошедшему в систему) пользователю получать доступ к другим сервисам без повторной аутентификации (без повторного ввода пароля) и не используя сохранные пароли для RDP . SSO можно использовать при подключения к терминальным серверам Remote Desktop Services . Это позволит избавить пользователя, выполнившего вход на доменном компьютере, от многократного ввода имени и пароля своей учетной записи в окне RDP клиента при подключении к RDS серверам или запуске опубликованных приложений RemoteApp.
В этой статье мы покажем, как настроить прозрачную авторизацию (Single Sign-On) для пользователей RDS серверов под управлением Windows Server 2022/2019/2016.
Требования к окружению:
Процедура настройки Single Sign-On состоит из следующих этапов:
В первую очередь вам нужно выпустить и назначить SSL сертификат для вашего развертывания RDS . В EKU (Enhanced Key Usage) сертификата должно обязательно присутствовать идентификатор Server Authentication . Мы опускаем процедуру получения сертификата, т.к. это она выходит за рамки статьи (можно сгенерировать самоподписанный SSL сертификат , но его придется добавлять в доверенные на всех клиентах через GPO ).
SSL сертификат привязывается в свойствах RDS Deployment в подразделе Certificates .
Далее на всех серверах c ролью RD Web Access нужно включать “ Windows Authentication ” и отключить анонимную проверку подлинности ( Anonymous Authentication ) для каталога IIS RDWeb.
iisreset /noforce
Если используется шлюз Remote Desktop Gateway , убедитесь, что он не используется для подключения внутренних клиентов (должна стоять галка Bypass RD Gateway server for local address ).
Теперь нужно получить отпечаток SSL сертификата (certificate thumbprint) RD Connection Broker и добавить его в список доверенных издателей rdp. Для этого на сервере RDS Connection Broker выполните команду PowerShell:
Get-Childitem CERT:LocalMachineMy
Скопируйте значение отпечатка сертификата и добавьте его в список отпечатков политики Specify SHA1 thumbprints of certificates representing RDP publishers (Указать отпечатки SHA1 сертификатов, представляющих доверенных издателей RDP) в секции Computer Configuration -> Administrative Templates -> Windows Components -> Windows Desktop Services -> Remote Desktop Connection Client (Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Клиент подключения к удаленному рабочему столу).
Следующий этап – настройка политики делегирования учетных данных для компьютеров пользователей.
gpmc.msc
); TERMSRV/*.contoso.com
. Чтобы избежать появления окна с предупреждением о надежности издателя удаленного приложения, нужно добавить адрес сервера с ролью RD Connection Broker в доверенную зону с помощью параметра GPO «Список назначений зоны безопасности для веб-сайтов» (по аналогии со статьей Как убрать предупреждение системы безопасности при открытии файла в Windows ).
Далее нужно включить политику Logon options (Параметры входа) в разделе User/Computer Configuration -> Administrative Tools -> Windows Components -> Internet Explorer -> Internet Control Panel -> Security -> Trusted Sites Zone (Административные шаблоны -> Компоненты Windows -> Internet Explorer -> Панель управления браузером -> Вкладка безопасность -> Зона надежных сайтов) и в выпадающем списке выбрать ‘ Automatic logon with current username and password ‘ (Автоматический вход в сеть с текущим именем пользователя и паролем).
Затем перейдите в раздел Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Connection Client и отключите политику Prompt for credentials on the client computer .
После обновления настроек групповых политик на клиенте , запустите клиента mstsc.exe ( Remote Desktop Connection) , и укажите FQDN имя RDS сервера. В поле UserName будет автоматически подставлено имя пользователя Windows в формате ( [email protected] ).
Your Windows logon credentials will be used to connect.
Теперь при запуске RemoteApp приложения или прямом подключении к Remote Desktop Services хосту, запрос пароля не будет появляться.
Чтобы использовать шлюз RD Gateway с SSO, нужно для пользователей включить политику Set RD Gateway Authentication Method (User Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> RD Gateway) и установить ее значение на Use Locally Logged-On Credentials.
Если у вас используется RD Web Access, то для корректной работы web SSO в Internet Explorer должен быть включён Active-X компонент MsRdpClientShell (MsRdpWebAccess.dll, Microsoft Remote Desktop Services Web Access Control).
В современных версиях Windows браузер Internet Explorer по умолчанию отключен , и вместо него нужно использовать Microsoft Edge. Для использования RD Web с SSO вам нужно открывать этот URL адрес в Microsoft Edge в режиме совместимости (Active-X компоненты без режима совместимости не запускаются в Edge).
Чтобы все клиенты открывали RDWeb в режиме совместимости, нужно установить административные шаблоны GPO для MS Edge и настроить параметры политик в разделе Computer Configuration -> Administrative Templates -> Microsoft Edge:
Возможные ошибки:
use redirection server name:i:1
Do you trust the publisher of this RemoteApp program?
An authentication error has occured (Code: 0x607).
Проверьте, что вы назначили корректный сертификат ролям RDS.
Как менялся логотип Apple на протяжении многих лет. Логотип Apple — это не просто символ,…
Security Boot Fail при загрузке Acer — решение проблемы При загрузке ноутбука Acer с флешки,…
Ноутбук не включается — варианты решения Если при попытке включить ноутбук вы обнаруживаете, что он…
The AC power adapter wattage and type cannot be determined — причины и решение При…
Свистит или звенит блок питания компьютера — причины и решения Некоторые владельцы ПК могут обратить…
Мигает Caps Lock на ноутбуке HP — почему и что делать? При включении ноутбука HP…