Deploying The Disclosure Portal

To use the disclosure portal alongside Workplace AI there are a few things that need to be set up. You need to perform actions on the server, in control hub and in the SAR application.

The following guide assumes everything is being stored in the C: drive.

Prerequisites
  • Workplace AI has been installed.

  • Notepadd++ or another text editor is installed.

  • The Disclosure Portal zip has been downloaded from GitHub. Your Aiimi contact can help you with this if you don't have it.

Extract Zip

1

Extract the ‘disclosure-portal.zip’ file you downloaded to the C:\ drive.

  • This will create a Disclosure Portal folder with 3 folders within it.

    1. C:\DisclosurePortal\admin-api

    2. C:\DisclosurePortal\client-api

    3. C:\DisclosurePortal\client-app

We recommend this path structure as this is how they are named in the Portal upgrade scripts.


Initialise SAR Collection

There are some preconfigured mappings we recommend setting up on your system. This model contains defaults for things like your Subject Types and Universal Policies.

1

Login to the Control Hub.

2

Go to Mappings > Models > Collections and look for 'SAR Collection (dsarCollection)'

  • If the mapping exists you can skip the next step.

3

If it does not exist, on the server open PowerShell as an administrator and run the following script.

cd C:\InsightMaker\Utils\InsightMaker.IndexUtilities\ 
.\InsightMaker.IndexUtilities.exe initialise --dsar --publish 

Create Self-Signed Certificate

1

Open PowerShell as an administrator.

2

Run the following script to create a self-signed certificate.

$newcert = New-SelfSignedCertificate -dnsname DisclosurePortal -KeyLength 2048 -CertStoreLocation cert:\LocalMachine\My -NotAfter (Get-Date).AddYears(10)  
  • You can change the DNS name, subject (distinguished name), expiry date, etc. if you want.


Configuring the Client IIS

To set up the client side of the disclosure portal you need to configure IIS.

1

Open Internet Information Services (IIS) Manager.

2

Expand your connections and right click Sites.

3

Select Add Website and populate the following fields.

Site name - DisclosurePortal

  • (or similar, useful name)

Physical path - C:\DisclosurePortal\client-app

  • This is the client-app, NOT the client-api.

  • Check the storage path before you continue.

Type - https IP address - All Unassigned Port - 444

  • (This should be set to Port 443 if on a different server)

SSL certificate - DisclosurePortal

  • The certificate you just created.

4

Select OK.

5

Expand the Sites connection and right click DisclosurePortal.

6

Select Add Application... and populate the following fields.

  • Alias - api

  • Physical path - C:\DisclosurePortal\client-api

    • Check the storage path before you continue.

7

Select OK.


Configuring the Admin Service

The admin side of the disclosure portal is managed as a service as it has not frontend to host. This also allows for larger items to be sent to the disclosure portal.

1

Open PowerShell as an administrator and run the following script to set up the Admin Portal.


Generate root and child certificates

If deployed on a separate server, copy the folder ‘C:\InsightMaker\scripts’ to the server.

1

Open your file explorer and navigate to C:\DisclosurePortal.

2

Create a new folder called ‘certs’.

3

Go to the Insight Maker Scripts file.

  • Eg. C:\InsightMaker\scripts. The path for your system may vary.

4

You can change some of the information for your certificates if you want. Right click ‘create-root-child-certs.ps1’ and edit with Notepad++.

You can change: -DnsName - line 4 -FriendlyName - line 4 -String (password) - line 9 -dnsname - line 19 -FriendlyName - line 19

5

Save and exit Notepad++.

6

Open PowerShell as an administrator.

7

Run the following script to create the certificates.

8

In the file explorer navigate to C:\DisclosurePortal\certs\.

  • There should be 2 child and 2 root certificate files in here.

9

Right-click root.crt and select Install Certificate.

10

Select Local Machine.

11

Select Next.

12

Select Place all certificates in the following store.

13

Select Browse, and choose Trusted Root Certification Authorities.

14

Select OK, then Next, then Finish.


Log4net.config Files

Define where the logs for the disclosure portal will go.

1

Open your file explorer and navigate to C:\DisclosurePortal\client-api.

2

Make a copy of your log4net.default.config file and rename the copy log4net.config.

3

Open the log4net.config with Notepad++.

4

On line 4 update the file value to your tmp logs folder. Eg. C:\tmp\logs.

5

Save the file and close Notepad++.

6

Open your file explorer and navigate to C:\DisclosurePortal\admin-api.

7

Repeat steps 2 - 5 for the admin-api file.


web.config

Rename the web.default.config file to match the system requirements.

1

Open your file explorer and navigate to C:\DisclosurePortal\client-api.

2

Make a copy of your web.default.config file and rename the copy web.config.

3

Open your file explorer and navigate to C:\DisclosurePortal\client-app.

4

Make a copy of your web.default.config file and rename the copy web.config.


appsettings.json

Folder Preparation

If you are deploying this on a separate web server to Workplace AI. Copy the folder C:\InsightMaker\Plugins to the Disclosure Portal server.

1

Open your file explorer navigate to C:\tmp.

2

Create 2 new folders. One called disclosures and another called RequestStore.

File Preparation

Disclosure Settings

1

Open notepad and create an empty file.

2

Name this file disclosuresettings.json and save it in C:\DisclosurePortal\.

Verification Store

1

Create another new file in notepad.

  • The file must contain:

2

Name this file verificationStore.json and save it in C:\tmp\.

Client-API

1

In your file explorer navigate to C:\DisclosurePortal\client-api.

2

Make a copy of your appsettings.default.json file and rename the copy appsettings.json.

3

Open the appsettings.json with Notepad++.

4

Update the following information in the file.

  • plugins.locations (line 10) - "C:\\InsightMaker\\Plugins"

  • disclosureSettingsPath - "C:\\DisclosurePortal\\disclosuresettings.json"

  • disclosureRoot - "C:\\tmp\\disclosures"

5

Save the file and close Notepad++.

Admin-API

There are a number of app settings that need updating to allow the admin side of disclosure portal to work.

1

Open your file explorer and navigate to C:\DisclosurePortal\admin-api.

2

Make a copy of your appsettings.default.json file and rename the copy appsettings.json.

3

Open the appsettings.json with Notepad++.

4

Update the following information in the file.

  • disclosureSettingsPath - "C:\\DisclosurePortal\\disclosuresettings.json"

  • disclosureRoot - "C:\\tmp\\disclosures"

  • plugins.locations (line 6) - "C:\\InsightMaker\\Plugins"

  • remoteApi.Port - 4430

    • Check the port is unused before you update the file. If it's in use, change this to an unused one.

  • remoteApi.certificate.path - "C:\\DisclosurePortal\\certs\\elastic-certificates.p12"

    • If deployed on the same server as Workplace AI, use the path of your elastic-certificates.p12.

  • remoteApi.certificate.password - Enter the password for your elastic-certificates.p12.

5

Save the file and close Notepad++.


Configure Agents and APIs

You need to update the Disclosure Client Certificate path and password for the following APIs and Agents.

1

Open your folder browser and navigate to C:\InsightMaker\Apps\Admin\api\.

2

Open the appsettings.json file in Notepad++.

3

Update the following information in the file.

Check the storage path and password before updating this information.

The password for the child.pfx is set when you run the create-root-child-certs.ps1 script.

4

Save the file and close Notepad++

5

Repeat steps 2 - 4 for the following appsettings.json files.

  • Search API - C:\InsightMaker\Apps\Search\api\

  • ContentAgent - C:\InsightMaker\ContentAgent\

  • JobAgent - C:\InsightMaker\JobAgent\

6

On the server with Workplace AI, open PowerShell as an administrator.

7

Run the following script to restart IIS.

8

Restart the Job and Content agents.


Configure Control Hub

The portal URLs need to be defined in the control hub.

1

Open your web browser and login to the Control Hub.

2

Navigate to Global Settings > Disclosure Portal.

3

Enable disclosures to the portal - toggle this to enable the disclosure portal.

4

Enter the URLs for the portal.

  • Privacy Portal URL - https://localhost:444

  • Privacy Portal Admin URL - https://localhost:4430

5

Select Sync Disclosure Portal.

6

Select Save Changes.

The disclosuresettings.json file on the portal server should now be populated.

If this file is not updated:

  • Check the Windows Firewall if it is on separate server to Workplace AI. Then run through the steps in this guide again.

  • You can also view the log file to review any errors, \InsightMaker.Middleware.Admin.log.


More Information

Last updated