The reason for this is the User Account Control (UAC). Introduced with Windows Vista User Account Control (UAC) keeps the user in a non-elevated state if not explicitly told to be elevated as an administrator.
To read more about how the User Account Control (UAC) works in Windows 10, refer to https://docs.microsoft.com/en-us/windows/security/identity-protection/user-account-control/how-user-account-control-works
This blog post describes how to elevate to an administrator in Powershell.
For learning more about Powershell, I recommend signing up and using Pluralsight!
Which Powershell actions require elevation?
There are some actions in Powershell which require you to elevate, such as:
- Changing of the Execution Policy
- Modifications to System Files
- Modifications of the Registry
I would say that it is best practice always to start an elevated Powershell window, to not run into any unexpected issues.
The only time I would not recommend this if you are testing a script intending to run as a regular user.
It is also possible to add a snippet in a script to check if the current session is running in elevated mode.
How to elevate Powershell to admin
There are several alternatives for elevating your Powershell window.
Here are three alternatives:
- Elevate Powershell to an administrator through Windows Search
- Create a new task in Task Manager
- Use the runAs command in Powershell
Alternative #1 – Elevate Powershell to admin through Windows Search
The easiest way to start elevated Powershell windows is by searching for it.
Press the Windows button to open the start menu, and type Powershell. Select Run as administrator.
Press Yes in the UAC prompt, and you are good to go!
Alternative #2 – Create a new task in Task Manager
Press the Windows button and search for Task Manager.
Press File and Create a new task
Enter PowerShell and check Create this task with administrative privileges
Alternative #3 – Use the runAs command in Powershell
Run the following command from a non-elevated Powershell prompt:
Start-Process Powershell -Verb runAs
If prompted by the UAC, enter the administrative credentials.
There are now two Powershell windows, one elevated to an administrator and one not elevated to an administrator.
I hope you have found one way of opening Powershell as an administrator user. How do you elevate to an administrator? Please leave a comment below! 🙂
- Microsoft Docs – Powershell Documentation
- Microsoft Docs – User Account Control (Windows applications)
- Learn Powershell at Pluralsight
- How To Check Bitlocker Encryption Status on Windows 10
- Add Active Directory users to groups using Powershell and a CSV file
- Add user to local administrator Group using Powershell
- How to check if Powershell is running as an administrator
- Copy a file to a new directory using Powershell
- How to create a Hyper-V Virtual Machine using Powershell
- How to change Powershell version for backward compatibility
- How to export RSOP results using Powershell