6

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

Я хочу разместить на рабочем столе значок, который будет запускать определенную программу в качестве учетных данных Active Directory. Я знаком с SysInternals ShellRunAs, но для этого потребуется щелчок правой кнопкой мыши, что означает переподготовку пользователей.

Могу ли я сделать это, дважды щелкнув по значку, который они обычно делают, и они получат запрос на ввод имени пользователя / пароля, а затем выполнят программу таким образом?

4 ответа4

7

Если вам подходит PowerShell, сценарий PowerShell может запросить учетные данные, а затем использовать эти учетные данные для запуска процесса.

Start-Process -FilePath "C:\Windows\notepad.exe" -Credential (Get-Credential)

Пользователь видит это приглашение, а затем процесс запускается.

5

Вы можете изменить ярлык для использования утилиты командной строки RunAs. Например, вот цель ярлыка, который попытается открыть определенную папку в проводнике как пользователь BillyBob:

C:\Windows\System32\runas.exe /user:BillyBob "Explorer.exe F:\Projects"

Аргумент /user также может принимать учетные данные домена (жестко запрограммированные или использующие переменную среды% USERDOMAIN%:

C:\Windows\System32\runas.exe /user:%USERDOMAIN%\BillyBob "Explorer.exe F:\Projects"\BillyBob "Explorer.exe F:\Projects"

Имя пользователя может быть назначено переменной среды %username% :

C:\Windows\System32\runas.exe /user:%username% "Explorer.exe F:\Projects"

Или с доменом и именем пользователя из среды:

C:\Windows\System32\runas.exe /user:%USERDOMAIN%\%username% "Explorer.exe F:\Projects"

После открытия ярлыка в окне cmd.exe отобразится запрос пароля указанной учетной записи:Запрос пароля

Если вам нужно, чтобы пользователь ввел имя пользователя, то все становится немного странно, и вы должны поместить это в файл .bat:

@Echo Off

set INPUT=
set /P INPUT=Username: %=%
C:\Windows\System32\runas.exe /user:%INPUT% "Explorer.exe F:\Projects"
4

ShellRunAs строго не требует щелчка правой кнопкой мыши; его можно (и фактически он) вызывать как обычный инструмент с исходной программой, заданной в командной строке - точно так же, как встроенные runas но графические.

shellrunas notepad foo.txt

Это может быть использовано в ярлыке.

-1

Это мой способ сделать это:

@echo off
rem @--------Window config
COLOR F3
mode con cols=60 lines=10
echo.%date%
rem @--------Authentication
@echo.
@set /p user=Username:
@echo.
@runas /user:%user% "C:\Programas\Internet Explorer\IEXPLORE.EXE http://www.google.com"

rem @ if you are in a domain use:
rem @runas /user:DOMAIN\%user% "C:\Programas\Internet Explorer\IEXPLORE.EXE http://www.google.com"

rem @---------Window close time (after "-n" put window close time in seconds)
ping -n 3 127.0.0.1>NUL

@cls
@exit

Вы можете проверить это, и он будет работать нормально.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .