How to create a whitelist UAC for Windows 7?
(It’s been awhile!)
Strangely, with Windows 7 and Vista prompting the user for every program it doesn’t like, there seems to be no official method to create a whitelist: a list of programs that user always wants to run as administrator. I ran into this problem when upgrading to Win7, when I wanted to see real-time statistics of my CPU temperature. After researching a bit, there is an unofficial way to do this, so below are several techniques of how create a whitelist.
Option #1: Disable UAC Completely (not recommended)
One way is to just not deal with UAC and disable the whole thing. This is not recommended, but here are the instructions on how to do it, if you so choose to follow this route. Go to Action Center from Control Panel. From there, select ‘Change User Account Control Settings’.
This will popup a window with a vertical slider. Adjust the slider to the bottom (lowest settings), and this will disable the UAC.
Again, I highly recommend against disabling this feature.
Option #2: Create a white list through Task Scheduler (Recommended)
There’s a small loophole in UAC: if you try to run an elevated task through Task Scheduler, it will not prompt the user for permission. This makes sense since if a task that runs in the background had to ask user permission, the computer couldn’t run well especially if tasks ran when user isn’t present. We’re going to use that loophole to create our white list.
First, go to task scheduler (Type ‘task’ under Windows search bar), and create a folder. This will help organize your tasks, since you cannot move them when they’re created. In this case, we created a folder called ‘MyTasks':
Once done, create a new task. Make sure that you select “Run with highest privileges” in the box.
Now go to the Action tab and create your own start application. In this case, we are creating a simple task to start RealTemp program, a nifty CPU monitor program.
Save everything and exit out. We have created a task that we can run without needing any UAC prompting.
This is the first step. We want to run this at any given time, not setup a schedule to start this application. To do this, create a shortcut, and type in the following commands:
C:\Windows\System32\schtasks.exe /RUN /TN "<FOLDER>\<NAME_OF_TASK>"
In our little example above, it would be:
C:\Windows\System32\schtasks.exe /RUN /TN "myTasks\RealTemp"
Put this shortcut into the StartUp folder, and during bootup, the program will launch without any UAC prompt. You have finished creating a whitelist UAC!
(Full credit goes to MagicAndre1981, who had figured out how to create a shortcut on task schedulers)
Option #3: Create a whitelist UAC through a simple program called “Elevate Me”
There’s a nifty little script someone wrote that automatically takes task scheduler idea and automate so that you don’t need to go through the hoops on creating a task and a shortcut. He created a program (which he elevated through task scheduler) that will launch any program you want in elevated status. An interesting workaround, but he created a nice UI to simply elevate the program.
Download the application from here and install SkipUAC.zip. Once successfully installed, just select any target application and choose “Elevate Me” through right-click.
Note: did notice that my antivirus did not like this script. The author mentions in the comments that someone used the script to write a virus, which antivirus companies scan and labeled this particular code as malicious. For this reason I went with Option #2 to manually create your own shortcuts. Use this program at your own risk.
Disable UAC: Disabling User Account Control (UAC) in Windows 7
Create TaskScheduler UAC: Create Whitelist UAC
Create shortcut for whitelist UAC: What’s a UAC?
Elevate ME script: Ignore UAC for specific programs