VOV Windows Impersonation

VOV supports Windows in addition to many UNIX variants. This section describes cross-platform jobs between UNIX/Linux and Windows.

User Accounts that Run Jobs on Windows

The persistent Windows vovtasker runs as the user that started it, but can switch to other accounts if it is supplied with the account credentials by the vovserver. These credentials are supplied with the job over the VOV-protocol connection between the vovserver and the vovtasker. This capability became available in the Altair Accelerator 2009.12 version.

Every Altair Accelerator project, including Accelerator, is a collection of jobs and files managed by a vovserver. A project may be multi-user, and the vovserver stores information about the users who have jobs in the project. Each user has an account name that is related to a user ID, and possibly to a Windows account name. The vovserver uses the operating system's mechanism to authenticate users. A user must already have authenticated to the OS before being able to start a vovserver, and the vovserver runs in that user's account.

Enter the Windows Password

In the vovconsole GUI, you may enter the Windows password using the Tools > Windows Password menu item. From the command line, you can use the vovauxpasswd command.

Batch Files

In the course of running the job, the Accelerator tasker on Windows creates a batch file, and may use an optional pre- and post-job batch file. The initial directory for the job is on the C: drive, or whatever drive contains the working directory of the vovtasker. The generated batch file mounts any necessary filesystems on drive letters, then changes to the run directory before starting the job.

The following is an example of the pre-job batch file that if present, will be called by the vovtasker's job-bootstrap batch file. This example records the variables and mounted filesystems in the file pre-hook.txt.

Example script: vovbtpre.bat:
REM Example script: vovbtpre.bat
@REM Record variables and mountpounts into a file for troubleshooting
set & pre-hook.txt
net use && pre-hook.txt
REM Be sure the Runtime tools are in the PATH
call %VOVDIR%\bat\vovinit.bat
net use
echo on
REM start cmd /T:40
REM vovsh -x "after 10000"

Th following is an example of the job bootstrap script that is created automatically by vovtasker. $pid and $N will be substituted with numeric values in the actual batch files. The script mounts the filesystems needed, and calls the pre- and post-scripts if defined. In this case, the job itself just starts a Windows cmd shell that in turn starts another.

Example script: vovbt_$pid_$N.bat
@REM -- Bootstrap script to run job for a different user.
@REM -- Created by vovtasker for user 'integ'.
@REM ----- START OF NET USE SECTION -----
if not exist t:\nul net use t: \\titan\proj
if not exist s:\nul net use s: \\titan\proj
if not exist r:\nul net use r: \\titan\release
@REM ----- END OF NET USE SECTION -----

@REM ----- A SIMPLE HOOK, MOSTLY FOR DEBUGGING -----
IF EXIST vovbtpre.bat CALL vovbtpre.bat
chdir /d "t:\proj11\casotto\ac8head"
vw cmd /k /c cmd "&" vnc_logs/20091120/122549.14547
IF EXIST vovbtpost.bat CALL vovbtpost.bat
@REM -- End of bootstrap

If defined, the batch file vovbtpost.bat is called after the job. The following example uses the choice command to keep the window visible until a key is pressed.

Example script: vovbtpost.bat:
REM Example script: vovbtpost.bat
REM Use choice cmd to make window stay around
choice /M "Press Y to finish"

echo done