Hi @Pascal
I did manage to solve this (mostly). The caveat is that I have only fixed the issue for the legacy executables (HxRun.exe, HxMethodCopy.exe). The project I was working on had very tight timelines and we were only deploying Venus 6.2.2 for a single instrument in the business at that time - and so I didn’t figure out how to apply this to the new GUI/version of Run Control.
These are the components that you need to put in place to achieve protection of logfiles but preservation of function for Venus.
Folder Access:
C:\Program Files (x86\HAMILTON\ - Full control for all users applied to that folder and all subfolders and files, disable allowing of inheritance from parent object to this object
C:\Program Files (x86\HAMILTON\LogFiles - Full control for SYSTEM and administrators, read and execute for BUILTIN\Users applied to that folder and all subfolders and files, disable allowing of inheritance from parent object to this object
Executable Elevation
Use a piece of security software such as PowerBroker, BeyondTrust Privilege Management or similar to add admin tokens to the following executables. This allows these programs to be run by users with their normal access levels (operator, method programmer etc.), but Windows sees a hidden flag on them and treats them as if they were run by a local administrator. That’s what allows them to write into the LogFiles folder. You can normally also a tick an option to prevent the permission propagating to child processes or Explorer windows - that stops users being able to use a loophole to gain local administrator access to a system via a File Open dialog.
C:\Program Files (x86)\Hamilton\bin\HxRun.exe
C:\Program Files (x86)\Hamilton\bin\HxMethodCopy.exe
C:\Program Files (x86)\Hamilton\bin\Hamilton.MethodCopy.exe
C:\Program Files (x86)\Hamilton\Bin\DesktopClient\Hamilton.VENUS.exe
C:\Program Files (x86)\Hamilton\bin\Hamilton.HxVectorDbManager.exe
C:\Program Files\Microsoft SQL Server\MSSQL15.HAMILTON\MSSQL\Binn\SQLAGENT.EXE
C:\Program Files\Microsoft SQL Server\MSSQL15.HAMILTON\MSSQL\Binn\sqlservr.exe
One limitation of this approach was that importing/exporting a method via Method Editor incurred at 60-70 second delay for an unknown reason - I couldn’t get around this. Therefore I added the admin token to HxMethodCopy.exe instead and made it our process to use that directly for import and export of methods.
Finally, I found that in my case, after login the services which run the Microsoft SQL Server actually started before my security software’s client. Therefore, SQL Server was already launched before the security software had a chance to apply the admin token to it - it gets applied when the software is launched only. Therefore I had to modify the MSSQL$HAMILTON and SQLTELEMETRY$HAMILTON services to have the “Automatic (Delayed Start)” startup type.
I think that was all that was required to get this sort of behaviour working. I think to get it working fully for the new GUI in Venus 6, it will just be a matter of finding all of the new executables involved and adding admin tokens to those also.
Good luck!
Will