Есть ли способ переключить процесс существующего пользователя (который выполняется от имени пользователя x) на другого пользователя (пользователя y) в .Net / C #? Теперь я не имею в виду выдавать себя за пользователя и выполнять новый процесс от его имени. Я имею в виду возможность передачи запущенного процесса другому пользователю программным способом без необходимости повторного выполнения процесса / приложения в качестве нового пользователя.
Нет, это не может быть сделано. Пользовательский токен назначается как часть механизма создания процесса, а затем фиксируется на время этого процесса. Это одна из причин, по которой повышение прав UAC должно включать отдельные процессы.