After enabling HTTPS on the web server, a few additional steps need to be performed in order to get the Medical Web Viewer to work fully with HTTPS. The steps are detailed below.
Update the web.config file for the MedicalViewerService. Make the following changes: a. Add security information to the <webHttpBinding> tag. Original:
<webHttpBinding>
<binding name="HandleLargeData" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="2147483647"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
</binding>
</webHttpBinding>
Changes:
<webHttpBinding>
<binding name="HandleLargeData" maxReceivedMessageSize="2147483647">
<readerQuotas
maxDepth="2147483647"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
<binding name="wsHttpEndpointBinding">
<security mode="Transport">
<transport clientCredentialType="None" />
</security>
</binding>
</webHttpBinding>
The highlighted lines set up the services to support HTTPS. b. Update each endpoint declaration (except for the Leadtools.Medical.WebViewer.Wcf.AnnotationsService) with a new bindingConfiguration attribute, as follows:
<service
name="Leadtools.Medical.WebViewer.Wcf.PatientAccessRightsService"
behaviorConfiguration="WebViewerServiceBehavior">
<endpoint
address=""
binding="webHttpBinding"
bindingConfiguration="wsHttpEndpointBinding"
contract="Leadtools.Medical.WebViewer.ServiceContracts.IPatientAccessRightsService"
behaviorConfiguration="WebViewerServiceBehavior">
</endpoint>
</service>
This tells the service to use the configuration that was specified above.
Update all of the .svc files in the MedicalViewerService to remove the Factory attribute. Original:
<% @ServiceHost Language=C# Debug="true" Factory="System.ServiceModel.Activation.WebServiceHostFactory" Service="Leadtools.Medical.WebViewer.Wcf.ArchiveQueryService" CodeBehind="ArchiveQueryService.cs"%>
Updated:
<% @ServiceHost Language=C# Debug="true" Service="Leadtools.Medical.WebViewer.Wcf.AnnotationsService" CodeBehind="AnnotationsService.cs"%>
The highlighted attribute has been removed.
<link href=https://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
The highlighted portions have been changed from "http" to "https".