Starting a process (.exe-file) from ASP.NET with different user credentials

J

Jørn A.

I'm working on a web based user interface for a job scheduling system
(running scripts).

The system is using a non-windows scheduler software, but it's installed and
running as a windows service. The service is running with the credentials of
a specified domain user, and all processes kicked off by the scheduler
service runs with these credentials.

In the web based interface I want to add a "Run" button for each job, making
it possible to start a job (script) manually. The button is supposed to
start a process on the webserver, and I want this process to run with the
credentials of a specific user account (the same account as the scheduler
service runs as).

I tried using...
System.Diagnostics.Process.Start(strPathToExecutable, strArguments)
....but today processes started runs as the local ASPNET-account.

I found that there are two possible solutions.
1. This is a website that uses Integrated Windows(nt challenge/response)
authentication, and I could start the process with the credentials of the
user pushing the "Run" button (the user logged on to the website though the
web browser).
2. I could run the process with the credentials of one specific user
accound, independent of which user is clicking it.

I think the latter is preferable.

If anyone can help me with this dilemma I would really appreciate it.

-Jørn A.
 
L

Lars-Erik Aabech

Could you set up a small subweb that impersonates the user you want?
(using <impersonate> in web.config)

Lars-Erik
 
J

Jørn A.

It seems like System.Diagnostics.Process.Start() still runs as the ASPNET
account.

-Jørn A.
 
S

Scott Allen

Hi Jørn A.:

Yes, when a new process spawns it always takes the identity of the
host process and not the identity of the thread you launch from.

The only real way to get this to work in 1.1 is to PInvoke
CreateProcessWithLogonW. If you are trying to launch a GUI application
however, you are going to run into problems since ASPNET runs in a non
interactive desktop.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,223
Members
46,813
Latest member
lawrwtwinkle111

Latest Threads

Top