HTTP Error 500 19 when accessing OCPE firmware URLs on Windows 2008

You might experience that your Office Communicator Phone Edition powered devices are not updating to new firmware versions hosted on a OCS 2007 R2 enterprise edition pool running on Windows 2008.

The cause could be that the device is not able to access the firmware, because it is getting HTTP error 500.19 (0x80070005 – ERROR_ACCESS_DENIED) back from IIS, when trying to download the new firmware.

To understand if that indeed is your problem check the the IIS logfile (default location c:\inetpub\logs\LogFiles\W3SVC1). If you have the problem you’ll see lines like this:

GET /DeviceUpdateFiles_Int/UCPhone/Polycom/CX700/A/ENU/3.5.6907.0/CPE/cpe.nbt - 80 - <browser UA string> 500 19 5 78

If you try to access the URL through Internet Explorer running on the Windows 2008 server using a URL like the following  https://ocsr2.contoso.com/DeviceUpdateFiles_Int/UCPhone/Polycom/CX700/A/ENU/3.5.6907.0/CPE/cpe.nbt you’ll get a similar screenshot to the one below:

Capture

I don’t know all the technical details as to why this happens, but it is related to the way IIS accesses the file on the share used to host the firmware.

To solve the issue you need to change the Connect as value in Basic Settings for the _int vdir from Pass-through authentication (see below)

Capture3

to connect using the RTCGuestAccessUser account specified when you added the server to the EE pool (see below).

Capture4 

It will then be the same configuration used for the _ext vdir.