Category Archives: 16863

PowerShell Web Access on the Windows Server 8 Beta

One of my favourite features of Windows Server 8 is Windows PowerShell Web Access. This essentially presents a basic PowerShell console over HTTPS, hosted by IIS8. When I get an email on my phone saying that a new support ticket has come into my team while I’m on the train commuting to/from the office, in lots of cases I can just launch PSWA on the phone and solve it pretty quickly.

Microsoft have provided some fairly comprehensive documentation on the deployment process for PSWA at It has changed significantly between the Developer Preview and the Beta, adding some cmdlets to do the configuration and ensuring that you can more or less deploy PSWA without any knowledge of IIS.

PSWA provides a remote PowerShell session, so the login screen asks for your credentials as well as a computer to connect to. You can supply different credentials to the PSWA server and the remote target, plus you can target specific remote target configurations on the endpoint. That means as an admin, you could setup a limited endpoint and tell a less privaledged user how to connect to it via PSWA, perhaps giving them the ability to explore but not alter some things.

That screenshot is PSWA in the Chrome Beta on Android 4 (ICS) on an Asus Transformer Prime. You can just about see the interface elements along the bottom of the PSWA UI there. There’s a Tab button, which lets you do tab-completion on devices like phones and tablets where the virtual keyboard doesn’t have a Tab key (clever!). And you’ve got some up and down arrows to navigate your command history. It’s pretty darned good for a v1.0.

I setup a Windows Server 8 Beta machine in my domain with a proper SSL certificate and it all worked like a charm. I’d had some issues earlier with using a test cert created by the Install-PswaWebApplication cmdlet on a standalone server, so I’m going to spend a bit of time later working out what was up there and if I find it wasn’t just me, I’ll share that info.

It’s worth saying that you can’t have multiple instances of PSWA running on the same server, so if you don’t want to install an application called “pswa” inside the “Default Web Site”, then you should specify WebSiteName and WebApplicationName parameters when you’re installing first time otherwise you’ll have to strip it out and start again.

There are some things that I’d like to see added to PSWA over time. One of them is the addition of more UI buttons like the Tab for commonly used PowerShell characters that aren’t so easily accessible on phone virtual keyboards, like | { } ` $_ (if you agree, you can vote up my suggestion on Connect). I’d also like to see support for snippets – this would be particularly useful on devices without a full keyboard.