Error when publishing eConnect Web Service over the internet
Introduction
GP Web Services provide developers a way to interact with Microsoft Dynamics GP Data without having to manually edit GP tables or open the Microsoft Dynamics GP Application.
GP Web Services are hosted virtually. They are still hosted by IIS, but you will not be able to locate them from the list of websites/virtual applications.
If you want to publish your GP Web Service over the internet, you first need to update the configuration files. These found in the GP Web Service installation folder.
If your hostname is different from your server name, you might encounter an error similar to the one below if you access your web service from inside the server:
Error 401.1. Unauthorized.
The odd thing is if you access your service over the internet, everything works as expected.
Compatibility
Microsoft Dynamics GP v2010 Web Services
IIS 7
Cause
"This issue occurs if you install Microsoft Windows XP Service Pack 2 (SP2) or Microsoft Windows Server 2003 Service Pack 1 (SP1). Windows XP SP2 and Windows Server 2003 SP1 include a loopback check security feature that is designed to help prevent reflection attacks on your computer. Therefore, authentication fails if the FQDN or the custom host header that you use does not match the local computer name" – Taken from Microsoft support site.
Solution/Workaround
Microsoft has developed a workaround for this (http://support.microsoft.com/default.aspx?scid=kb;en-us;896861). You need to specify the hostname in the BackConnection property in the registry. To do this, follow these instructions:
- Set the DisableStrictNameChecking registry entry to 1. For more information about how to do this, click the following article number to view the article in the Microsoft Knowledge Base:
- Click Start, click Run, type regedit, and then click OK.
- In Registry Editor, locate and then click the following registry key:
- Right-click MSV1_0, point to New, and then click Multi-String Value.
- Type BackConnectionHostNames, and then press ENTER.
- Right-click BackConnectionHostNames, and then click Modify.
- In the Value data box, type the host name or the host names for the sites that are on the local computer, and then clickOK.
- Quit Registry Editor, and then restart the IISAdmin service.