Представьте, что у меня есть существующий процесс, работающий под Windows от имени конкретного пользователя. Будет ли разрешено, чтобы этот процесс взял свой текущий токен (с чем-то вроде OpenThreadToken и DuplicateTokenEx), передал его другому процессу на том же компьютере (возможно, через сетевой сокет или другой IPC), а затем ожидал, что этот процесс сможет использовать его для вызова CreateProcessAsUser?
Из документации, которую я прочитал (http://msdn.microsoft.com/en-us/library/ms682429%28VS.85%29.aspx), Я не видел ничего, что бы запрещало это, но, возможно, токен может использоваться только тем потоком или процессом, который его создал.
(Зачем вам? Я хочу, чтобы веб-запрос пришел в IIS, прошел проверку подлинности, чтобы IIS организовал олицетворение удаленного пользователя, а затем передал маркер олицетворения другому процессу сервера (на том же компьютере), чтобы серверный процесс может выполнять некоторые проверки безопасности в контексте удаленного пользователя)