Если бы вы использовали Linux, я бы дал вам самое умное решение когда-либо , установив флаг SUID, что невозможно в Windows.
Проблема с олицетворением заключается в том, что он работаеткак только у вас есть некоторый контроль над серверным компьютером, больше, чем наличие соответствующих учетных данных.
Вы упомянули Amazon VM: я почти уверен, что они не позволят, по соображениям безопасности, чтобы исполнять олицетворение.[Добавить] Или, что еще лучше, они не позволят кому-либо писать в C:\
Опция 1
Переключиться на Mono / Linux, установить бит SUID с помощью chmod
из консоли и рок !!
Вариант 2
Если вы можете запускать исполняемый файл не ASP.NET (т. Е. У вас есть удаленный рабочий стол, SSH *) в качестве привилегированной учетной записи (примечание: привилегированный не означает Администратор ), тогда вы можете изменить дизайн своего приложения, чтобы ASP.NET вызывал службы из вашего процесса-демона с использованием WCF, веб-служб или удаленного взаимодействия.Но в этом случае вам нужно изменить внешний вид исполняемого файла, чтобы он стал автономным сервером.
[Добавить] Ни одно из решений не будет исправлено, если ваш хостинг-провайдер не позволяет вам писать в таких путях, как C:\
, но позволяет писать только под домашним каталогом.
* Работает и в Windows !!!!А я имею ввиду сервер !!!