This post is part of the Enabling Secure Connection for Web Services series.
There are several configuration files which need to be amended to enable a secure connection for Web Services. The first is a href=’There are several configuration files which need to be amended to enable a secure connection for Web Services. The first is WSBindings.config; the second is the legacy endpoint config file, DynamicsGPLegacy.config and the third, being covered in this post, is the native endpoint configuration file, DynamicsGP.config, which is, by default, located in C:\Program Files\Microsoft Dynamics\GPWebServices\ServiceConfigs.
There are three elements which need to be updated in the services node:
- Change the behaviorConfiguration node from
GPWCFStaticMetadataBehavior
toGPDynamicMetadataBehavior
. - Change the bindingConfiguration node from
WSHttpBindingTarget
toWSHttpBindingTargetSSL
. - Add a new https baseAddress line using the new port and the externally accessible DNS hostname:
<add baseAddress="https://SERVER.msdynamicsgp.co.uk:48666/Dynamics/GPService"/>
<service name="Microsoft.Dynamics.GP.WebServices.Contract.DynamicsGP" behaviorConfiguration="GPDynamicMetadataBehavior">
<endpoint address="Mex" name="http" binding="customBinding" bindingConfiguration="CustomBinding" contract="IMetadataExchange"/>
<endpoint address="GPService" name="GPWebService" binding="wsHttpBinding" bindingConfiguration="WSHttpBindingTargetSSL" contract="Microsoft.Dynamics.GP.WebServices.Contract.IGPServices"/>
<host>
<baseAddresses>
<add baseAddress="http://SERVER:48620/Dynamics/GPService"/>
<add baseAddress="https://SERVER.msdynamicsgp.co.uk:48666/Dynamics/GPService"/>
</baseAddresses>
</host>
</service>
There is one element which need to be updated in the behaviors node:
- Change the behaviorConfiguration elements under behaviour node from
httpGetEnabled
tohttpsGetEnabled
.
<behavior name="GPDynamicMetadataBehavior">
<serviceThrottling maxConcurrentSessions="1024"/>
<serviceMetadata httpsGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
<serviceCredentials>
<userNameAuthentication cacheLogonTokens="true"/>
</serviceCredentials>
</behavior>
Save the changes to the configuration file.
What should we write about next?
If there is a topic which fits the typical ones of this site, which you would like to see me write about, please use the form, below, to submit your idea.
1 thought on “Enabling Secure Connection for Web Services: Update Native Endpoint”