Я делаю тестовую программу под названием ResourceManager(RMTest), которая пытается получить доступ к изображению «resource.jpg» в том же каталоге.

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

RMTest - это форма запроса пароля, в которой есть жестко заданный пароль, который он проверяет, и, если он совпадает, он открывает другую форму с элементом управления Picturebox, который открывает изображение.

Я хочу позволить обычным пользователям запускать эту программу от имени администратора, надеюсь, со следующими ограничениями:

  1. пользователю не разрешен доступ к памяти программы во время ее выполнения.

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

В свою очередь, я ожидаю, что программа косвенно предоставит доступ к ресурсу через эту программу.

Я знаю, что это легко сделать в Linux, но в Windows я нашел только два решения, которые не работают:

  1. используя планировщик задач, который запускает программу с правами администратора, когда командный файл запускает 'schtasks /run /TN "RMTest"'

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

  1. C:\Windows\System32\runas.exe / пользователь:MYPCNAME\Administrator / savecred "C:\RMTest\ResourceManager.exe"

Это работает, но дает то же исключение, как если бы никаких прав не было предоставлено.


Есть ли способ сделать это в Windows, и если да, то как?

0