Configuring Upgrade Readiness with a System Proxy

I recently ran into an interesting issue, when setting up a Windows 10 Client for Upgrade Readiness behind a Web proxy. I used “ClientProxy=System” in the Deployment Script, meaning the System Proxy, which is configured via “netsh winhttp set proxy”, is being consumed by Upgrade Readiness.

However, running the Deployment Script always terminated with an Exit Code 12, translating into “Can’t connect to Microsoft – Vortex. Check your network/proxy settings”.

Taking a closer look at the Logfiles, the following was getting logged.

2018-05-20T20:12:53 : Info : Impersonating a user for authenticated proxy.

Checking for Vortex connectivity.

AccountUsedToConnect: HOMELAB\testuser01

Proxy settings:

  ProxyType: 0 (default proxy)

  ProxyList: (null)

  ProxyBypass: (null)

Connecting to https://v10.vortex-win.data.microsoft.com/health/keepalive 

Failed to connect to Vortex.

FailureExitCode: 0x80072efd

For reasons I don’t know, the Script takes the current User Account and tries to authenticate with the Proxy, which doesn’t seem to work in my environment.

After troubleshooting this with the Upgrade Readiness Team, the solution seems rather simple.

Before running the Deployment Script, I’ve added the following DWORD Registry Value:

HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection\DisableEnterpriseAuthProxy = 1

The above Registry Key is documented in an Upgrade Readiness Blog Post by Microsoft, however only in conjunction with a User Proxy Configuration.

When running the Deployment Script again, it will now terminate with an Exit Code 0, meaning all is well. Consulting the Log again, we can see a successful attempt to connect to the Vortex Service.

2018-05-19T20:11:41 : Info : Authenticated proxy settings not present.

Checking for Vortex connectivity.

AccountUsedToConnect: NT-AUTORIT-T\SYSTEM 

Proxy settings:

  ProxyType: 0 (default proxy)

  ProxyList: (null)

  ProxyBypass: (null)

Connecting to https://v10.vortex-win.data.microsoft.com/health/keepalive 

Connected to vortex. Service returned HttpStatus: 200.

To be honest, I don’t think that the above Registry Key is necessary for all Environments that plan to use ClientProxy=System. However, if you run into the same issue you might try it out to see if it solves your issue as well.

Kudos to the Upgrade Readiness Team for the awesome support on this!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.