Некоторые картинки не загружаются из РФ и РК, используйте VPN.

среда, 19 апреля 2023 г.

Keepass клик по URL - открытие RDP соединения с авторизацией

 
Отталкиваясь от описания можно заставить KeePass открывать RDP соединение с автоматической авторизацией. Вообще сам mstsc не поддерживает, но можно заранее записать креды, а потом удалить, собственно эта строчка именно это и делает

cmd://powershell.exe "cmdkey /add:{BASE:RMVSCM} /user:{USERNAME} /pass:{PASSWORD}; mstsc /v:{BASE:RMVSCM}; timeout 10; cmdkey /delete:{BASE:RMVSCM}"

Вариант с подстановкой адреса сервера как домена для имени пользователя

cmd://powershell.exe "cmdkey /add:{BASE:RMVSCM} /user:{BASE:RMVSCM}\{USERNAME} /pass:{PASSWORD}; mstsc /v:{BASE:RMVSCM}; timeout 10; cmdkey /delete:{BASE:RMVSCM}"

Таймаут нужен для того, чтобы успеть пройти авторизацию или подключение.

Скорее всего не прокатит для тех, у кого стоит запрет сохранения пароля на стороне сервера и также не поддерживается шлюз

Up

Да, не прокатит, а вот со шлюзом тоже  можно настроить.

cmd://powershell.exe "cmdkey /add:{BASE:RMVSCM} /user:{USERNAME} /pass:{PASSWORD}; cmdkey /add:{S:rdpGateway} /user:{USERNAME} /pass:{PASSWORD}; mstsc /v:{BASE:RMVSCM} /g:{S:rdpGateway}; timeout 10; cmdkey /delete:{BASE:RMVSCM};cmdkey /delete:{S:rdpGateway}"

Здесь мы добавляем учетку сразу для шлюза и для сервера, если они совпадают. При этом адрес шлюза записан на вкладке Advanced в String Fields

Лично я сделал отдельную схему для вариантов со шлюзом - grdp

UP

Есть косяк с паролями, которые содержат знак $

Обновление 12/10/2023. Вылез косяк с нестандартными портами, новый вариант выглядит так:

cmd://powershell.exe -NoProfile -WindowStyle Hidden -Command "$user=\"{T-REPLACE-RX:#{BASE:HOST}\{USERNAME}#(.*)\\(.*)\\(.*)#$2\$3#}\"; cmdkey /add:{BASE:HOST} /user:$user /pass:\"{PASSWORD}\"; mstsc /v:{BASE:RMVSCM}; timeout 10; cmdkey /delete:{BASE:HOST}"

И

cmd://powershell.exe -NoProfile -WindowStyle Hidden -Command "$user=\"{T-REPLACE-RX:#{BASE:HOST}\{USERNAME}#(.*)\\(.*)\\(.*)#$2\$3#}\"; cmdkey /add:{BASE:HOST} /user:$user /pass:\"{PASSWORD}\"; cmdkey /add:{S:rdpGateway} /user:$user /pass:\"{PASSWORD}\"; mstsc /v:{BASE:RMVSCM} /g:{S:rdpGateway}; timeout 10; cmdkey /delete:{BASE:HOST};cmdkey /delete:{S:rdpGateway};"

Поясню, конструкция:

"{T-REPLACE-RX:#{BASE:HOST}\{USERNAME}#(.*)\\(.*)\\(.*)#$2\$3#}"

Обманка, подставляет хост как домен, в том случае, если домен не указан в имени пользователя. Я до сих пор не понимаю почему оно работает, я вышел на нее случайным образом.

А конструкция:

-NoProfile -WindowStyle Hidden -Command

Скрывает окно сразу, в диагностических целях можно не добавлять

P.S. даже в кавычках, пароль не принимается со знаком $

Комментариев нет:

Отправить комментарий