RemoteApp .rdp вставлять кредиты?

11

Сервер Windows 2008 R2, на котором запущены службы удаленных рабочих столов (то, что мы называли службами терминалов в прежние времена) . Этот сервер является точкой входа в размещаемое приложение - я полагаю, вы можете назвать его «Программное обеспечение как услуга». У нас есть сторонние клиенты, подключающиеся к нему.

Использование RemoteApp Manager для создания ярлыков RemoteApp .rdp для распространения на клиентских рабочих станциях. Эти рабочие станции не находятся в одном домене с сервером RDS. Между доменами нет доверительных отношений (и не будет). Между рабочими станциями и сервером RDS существует строго контролируемый VPN-сайт, и мы совершенно уверены, что у нас есть доступ к серверу, заблокированному.

Запускаемое remoteApp является приложением ERP со своей собственной схемой аутентификации.

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

Однако я не могу понять, как встраивать кредиты AD в файл RemoteApp .rdp. Я действительно не хочу отключать всю аутентификацию на сервере RDS на этом уровне.

Есть хорошие варианты? Моя цель - сделать это как можно более понятным для конечных пользователей.

Уточняющие вопросы приветствуются.

Chris_K
источник

Ответы:

10

Можно встроить пароль в файл .rdp, но пароль зашифрован с помощью SID вашей локальной учетной записи пользователя таким образом, чтобы файл .rdp не был взаимозаменяемым между пользователями или компьютерами. Такое поведение является преднамеренным: Microsoft не хотела, чтобы злоумышленник мог получить ключи от терминального сервера, просто украдя файл .rdp с чьего-то рабочего стола.

К счастью, есть достаточно хорошо документированный обходной путь. По сути, вам нужно создать файл .rdp «на лету» с помощью пакетного файла или сценария, который пользователь запускает вместо mstsc.exeнепосредственного вызова . Ваш сценарий создает соответствующий файл .rdp и при этом шифрует пароль таким образом, чтобы mstsc.exeон принимался в контексте текущего пользователя.

Ресурсы:

Каждая из приведенных выше статей содержит либо ссылку на инструмент, который можно использовать для шифрования паролей RDP и / или исходного кода. Я бы предложил работать из исходного кода, если это возможно. (Как всегда, используйте двоичные файлы, скомпилированные незнакомцами из Интернета, на свой страх и риск.)

штурмовик типа "Скайхки"
источник
Это похоже на способ пойти и поблагодарить вас за ссылки! Забавно (хорошо, не совсем) давняя «бизнес-потребность» для этого ушла сегодня, но я думаю, что это был бы ответ.
Chris_K
1

Хм ... интересно. Первое, что приходит на ум, это использование ключа / сертификата (например, ssh):

Это помогает?

mbrownnyc
источник
Сертификаты! Да, это стоит посмотреть. У меня нет сервера шлюза в миксе, но, возможно, использование клиентских сертификатов может быть вариантом? Благодарю.
Chris_K
Мой поиск может быть слабым, но я не вижу возможности заменить пользователя / пароль сертификатом для клиентов.
Chris_K
Готовы к сложности? Так и думал! technet.microsoft.com/en-us/library/ff404286(WS.10).aspx (примечание: перенаправление смарт-карт может происходить в любом RDP-клиенте 6.0 + ... и я не реализовал ничего из этого)
mbrownnyc
... О, черт возьми!
Chris_K