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.