Configuring to use Dome https

Until now, PRIS has (by default) connected to Dome Web client (not Connector) via unsecured http only.

We currently use these endpoints for:

  • Reporting routes
  • Obtaining a security token

The Reporting route has always just been un-encrypted, however, if PRIS and the Dome web client are on the same domain (the norm and the default), we can use Windows message encryption.

Now, to use https to the Dome web client, if we use it for one, we will use it for all. 

To do this, we need to do the following:

PRIS

PRIS <= 1.5.0.5

appSettings.config
Change the following to https:

<add key="IISSitePrefix" value="https" />

 

web.config
Reporting - change the binding to use Transport (i.e. https) security.
Token - change to use a basicHttpBinding with mode set to Transport.
(see comment in the web.config)

PRIS

PRIS >= 1.5.0.6

Now there is just the one setting to change:

appSettings.config

<add key="IISDomeUseHttps" value="true" />

Dome

We need the following settings in the Dome web.config:

<service name="Micromine.Dome.SecurityWcfServiceLibrary.SecurityService">
       <endpoint address="" binding="basicHttpBinding" bindingConfiguration="secureHttpBinding"
         contract="Micromine.Dome.SecurityWcfServiceLibrary.ISecurityService" />
</service>
 
<service name="Micromine.Dome.DomeWeb.ExternalAPI.Requests.ReportingService">
     <endpoint address="" binding="basicHttpBinding" bindingConfiguration="secureHttpBinding"
             contract="Micromine.Dome.DomeWeb.ExternalAPI.Requests.IReportingService" />
</service>

The following settings being the important part:

binding="basicHttpBinding" bindingConfiguration="secureHttpBinding"

Note:

For Dome web>= version  4.15.0.5. web.config  you should see 2 blocks:

<!-- HTTPS configuration start: →
<!-- HTTPS configuration End: →

and 

<!-- HTTP configuration: →
<!-- HTTP configuration End: →

By default, everything between the HTTPS is commented out, and the HTTP is not.

To enable https, reverse this (comment out everything between  HTTP, and uncomment everything between HTTPS).

This will then set it as discussed above.