Read more on "Server OS Spotlight" »

Enabling and Using Windows PowerShell Web Access

By Eric Geier (Send Email)
Posted January 9, 2014


In Windows Server 2012 Microsoft introduced Windows PowerShell Web Access, a feature that enables you to remotely run PowerShell commands and scripts in a web-based console. You could, for instance, perform admin tasks easily on another PC, Mac, or even on a smartphone or tablet when you're away from the office.

PowerShell Web Access doesn't require you to have PowerShell, any remote access software, or even a Windows Server 2012 R2 Tutorials browser plug-in on the computer or device you're using the web-based console on.

Though Microsoft only lists a few officially supported desktop browsers (IE, Firefox, Chrome, and Safari), it has also been successfully tested on mobile browsers (Windows Phone, Android, and iOS). It should work on any computer or device with a browser that supports JavaScript, accepts cookies, and can connect to secure sites via HTTPS/SSL.

The Windows Server 2012 R2 or Windows Server 2012 that you're setting up the PowerShell access on requires the use of Web Server (IIS), .NET Framework 4.5 and Windows PowerShell 3.0 or Windows PowerShell 4.0.

You can enable the PowerShell Web Access component via the Add Roles and Features Wizard in Server Manager or by using the PowerShell deployment cmdlets for Server Manager. Refer to Microsoft's Technet website for detailed instructions.

Remember that enabling this web access poses some security risks and you should first enable some security mechanisms. Make use of the cmdlet-based authorization rules included with PowerShell Web Access and utilize the security features of Web Server (IIS).

For instance, if you know the exact IP address or range where remote PowerShell connections will be made you could impose address restrictions to specify the IP address or range of addresses taht are allowed to connect.

By default, the URL for the PowerShell Web Access is https://<server_name>/pswa. In order to sign-in the user must have the name or IP address of the remote computer they'd like to access or manage. They must be an authorized user on the remote computer and the computer must be configured to allow remote management. If the user doesn't sign out or exit, the connection will automatically end after 20 minutes of inactivity.

As you can see in the screen shot, PowerShell Web Access has several buttons on the bottom: Submit, Cancel, arrows, and Sign Out, and it also shows the Name or IP of the remote computer you're currently connected to.

There are some PowerShell features and functionality that aren't supported when using PowerShell Web Access that share the same limitations as during regular remote Windows PowerShell sessions.

There are also some restrictions specific to the web-based access. For instance, the function keys (keyboard shortcuts) won't work because they're used by the browser. The input/output colors cannot be changed, although the colors and styles of output can be changed by running a script.

You'll see a progress GUI for cmdlets that report progress, but only top-level progress information is displayed. You're also limited to connecting to one remote computer at once; you can't open PowerShell Web Access in multiple tabs.


Eric Geier is a freelance tech writer — keep up with his writings on Facebook. He's also the founder of NoWiresSecurity, a cloud-based Wi-Fi security service, and On Spot Techs, an on-site computer services company.

Follow ServerWatch on Twitter and on Facebook

Page 1 of 1

Read more on "Server OS Spotlight" »

Comment and Contribute

Your name/nickname

Your email

(Maximum characters: 1200). You have characters left.