FOIAXpress Collaboration Deployment Manual

Prev Next

The purpose of this document is to provide instructions for deploying Collaboration within your FOIAXpress environment.  

The FOIAXpress Collaboration facilitates document reviews with users outside of your FOIAXpress environment. With Collaboration, FX users can send document requests to outside users, and responsive documentation provided in response can be added to your FX Document Management and in subsequent request responses.  

Important Notes for v11.8.0 Upgrades

We’ve made significant changes to the deployment process for Collaboration v11.8.0. These changes apply to new and upgrading customers.

  • The inputs.json file used for previous installations CANNOT be used to upgrade to v11.8.0. There is a new file for this deployment included in the installation package. You must use this new file for the upgrade, however you can copy data over from a previously used file to the new one as needed

  • If your organization is using the new Document Management features, a few additional configuration steps are required. You’ll need to manually create and configure the PNG cache location (Administration > System Administration > System Settings), and add all the required system jobs to the scheduler (Administration > System Administration > Scheduler Configuration)

FOIAXpress Collaboration Installation Package

The FOIAXpress installation package is a zip file containing all the files needed to install FOIAXpress Collaboration. Your customized installation is driven by the values set in the Inputs.Json file located at the root of directory where the zip file is extracted.

Contact Casepoint support at support@Casepointtech.com for your installation package.

Deployment Procedure

Deploying FOIAXpress Collaboration follows the procedure outlined below. Each step is covered in the subsections in this manual.

  1. Download and verify the installation package, then extract the files

  2. Update the Inputs.json file with your deployment details

  3. Run Install.ps1

Collaboration Installation Prerequisites

Deployment System Requirements

The installation package must be deployed from the application server, which must meet the requirements outlined below:

Requirement

Description

Location

Deployment scripts can be executed from Application server. The script must be executed from application server if the Application or Scheduler are installed.

User

Permissions

The logged-in user should have the local administrator permissions.

Operating

System

Requirements

Windows 2016/2019/2022

URL Rewrite

Install the Microsoft IIS URL Rewrite extension, available via https://www.iis.net/downloads/microsoft/url-rewrite

Microsoft .NET

Framework 4.8

Runtime

Microsoft .NET Framework 4.8 Runtime must be downloaded and installed. It can be downloaded and installed from the following location:

https://dotnet.microsoft.com/en-us/download/dotnetframework/net48

SqlPackage

The SqlPackage must be downloaded and installed. It can be downloaded and installed from the following location:

https://learn.microsoft.com/enus/sql/tools/sqlpackage/sqlpackage-download?view=sql-serverver16#windows-net-framework

SqlServer

The SqlServer module must be downloaded and installed on the application server. See the Install SQL Server Module section for steps.

PowerShell Version

PowerShell 5.1.22621.963 must be installed for deployment using auto deployment.

https://www.microsoft.com/enus/download/details.aspx?id=54616

Microsoft

Visual C++

Redistributable

The Microsoft Visual C++ Redistributable must be downloaded and installed on the application server for all new FX installs.

(!!) Note: Both executables below must be downloaded and installed.  

https://download.microsoft.com/download/1/6/5/165255E71014-4D0A-B094-B6A430A6BFFC/vcredist_x86.exe https://download.microsoft.com/download/1/6/B/16B06F603B20-4FF2-B699-5E9B7962F9AE/VSU_4/vcredist_x86.exe

Install SQL Server Module

Follow the steps below to install the SQL Server Module on the application server:

  1. Navigate to the following link: https://www.powershellgallery.com/packages/Sqlserver/21.1.18256

  2. Under Installation Options, select Manual Download:

Instructions for manually downloading a .nupkg file from the installation options.

  1. Click Download the raw nupk file. The SQLserver .nupkg file downloads

  2. Locate the downloaded "SQLserverā€ file, then right click it and select Properties

  3. On the General tab, select Unblock, then click Apply

  4. Next, edit the ā€œSQLserverā€ file extension from .nupkg to .zip

  5. Extract the .zip package in the downloaded location. After the folder is extracted, remove ā€œsqlserver.ā€ from the folder name:

Display of SQL Server version 21.1.18256 in a file explorer window.

  1. Navigate to C:\ProgramFiles\WindowsPowerShell\Modules and create a folder called SqlServer

  2. Copy the renamed .zip folder from the downloaded location to the SqlServer folder created in the previous step (C:\ProgramFiles\WindowsPowerShell\Modules\SqlServer)

Account Permissions

Ensure the following accounts are granted full permissions as outlined below:

Account

Description

Application App Pool Account

This is the account used for app pool of the application in IIS.

Scheduler Service Account

This is the account used as the service account for Scheduler Windows service.

The above accounts must have full access to the file share path configured as the file repository location. The following folders will be created by the deployment tool under this file repository location (for on-prem deployments only). For AWS and Azure, the following folders should be manually created in the file repository location before running the deployment tool.  

The following table summarizes the permissions required on the subfolders in the file repository location.

Location

Access Type

Comments

\AFXWDOCS

Modify, Read & Execute, List Folder Contents, Read, Write

All FOIAXpress original are stored in this location.

\AFXWCORL

Modify, Read & Execute, List Folder Contents, Read, Write

All FOIAXpress correspondence documents are stored in this location.

\AFXWDOFL

Modify, Read & Execute, List Folder Contents, Read, Write

All FOIAXpress web download documents are stored in this location.

\AFXWERR

Modify, Read & Execute, List Folder Contents, Read, Write

All FOIAXpress electronic reading room documents are stored in this location.

Download the Installation Package

The Collaboration installation package contains the files needed to install FOIAXpress and its associated components. Contact Casepoint support at support@Casepointtech.com for your installation package.

After downloading the package, follow the steps below to unzip the file:

  1. Locate the downloaded .zip file, then right click it and select Properties

  2. On the General tab, select Unblock, then click Apply

  3. Next, unzip the contents of the folder. The contents of the package appear as shown in the following example:

File directory showing various folders and scripts with modification dates listed.

Verify the Integrity of the Installation Package

Steps to verify the integrity of the installation package.

  1. Open Windows Powershell ISE

  2. Use the command below to verify the integrity of installation package

Test-FileCatalog -CatalogFilePath "<<catalog file path(with extension of .cat) from downloaded artifact>>" -Path "<< folder that should be validated against the catalog file >>" 3. It will show as valid, as shown in the following example:  

PowerShell command output showing file cataloging process and validation message.

About the Installation Package

There are two primary files you’ll interact with during installation:

Folder structure showing inputs, install, and uninstall scripts for software management.

  1. Inputs.json: Drives the installation of the Collaboration components. The file is in a standard json format and needs to remain a valid json file for successful installation

  2. Install.ps1: The executable file you will run to deploy the installation package with the parameters configured in the Inputs.json file

Inputs.Json Settings for Installation

About the Inputs.json File

The Inputs.json file located in the root directory of the extracted deployment package zip file drives the installation of the different components of FOIAXpress Collaboration. The file is in a standard json format and needs to remain a valid json file post updates prior to the installation.  

The settings are grouped into sections, each addressing settings which may or may not require configuration, depending on your specific installation. The following subsections in this chapter describe each section of the Inputs.Json file.  

The parent node is the ā€˜inputs’ section. This section appears as follows:

JSON structure showing installation type and component status for an application.

Each section has parameters you can adjust to configure your installation. An example section is shown below, with an explanation for how it works:

Each (1) Section (ā€œInstallTypeā€ in this example) includes various (2) Settings (ā€œNewā€ in this example) to configure.  

JSON structure showing installation types with highlighted options for new and upgrade.

For each (A) Setting (ā€œUpgradeā€ here), you can edit the (B) text in quotations (ā€œNā€ here to indicate ā€œNoā€) to configure the settings for your installation. This might include adding a file path, user name, password, or simply a ā€œYā€ or ā€œNā€ depending on the field you are configuring.

The first section under the parent node is the Install Type. See the following section for details on configuring your install type, with the remaining sections following in the order they appear in the Inputs file.

Install Type

Use the ā€œInstallTypeā€ section to determine if this is a new installation, or an upgrade for an existing system:

JSON structure showing installation types: New and Upgrade with corresponding values.

Setting

Description

New

Determine whether this is a new installation. For new installations this should be a ā€œYā€ value.

Upgrade

Determine whether this is an upgrade for an existing application. For new installations this should be a ā€œNā€ value.

Install Components

The ā€œComponentsā€ section allows you to determine which components to include with this installation. To include a component with your installation, be sure to assign the component a ā€œYā€ value on the corresponding line.:

JSON structure showing installation types: New and Upgrade with corresponding values.

Setting

Description

APP

Include the FOIAXpress Collaboration in this installation procedure. This should be a ā€œYā€ value for new installations and upgrades if the applications needs to be installed or upgraded respectively.

SCHEDULER

Include the FOIAXpress Collaboration Scheduler in this installation procedure. This should be a ā€œYā€ value for new installations and upgrades if the scheduler needs to be newly installed or upgraded respectively.

DB

Include the FOIAXpress Collaboration Database in this installation procedure. This should be a ā€œYā€ value for new installations and upgrades if the database needs to be newly installed or upgraded respectively.

Application and Scheduler

The ā€œAPPANDSCHEDULERā€ section has settings related to Collaboration application and scheduler installations. A value must be set for all values in this section to successfully install the application:

NOTE: Any files paths specified must have two backslashes where a path in windows explorer requires a single backslash.  

Configuration settings for AppScheduler including installation and backup locations, SSL details.

Setting

Description

InstallLocation

Specify a path for the Collaboration installation. Note this must be a file path for the .json file the execute.

BackupLocation

Specify a path for the Collaboration backup location. Note this must be a file path for the .json file the execute.

SSLCert

The following lines contain the SSL Certificate information. No data is required on this line. This is the grouping for SSL Certification settings to be used for the installation.

SSLPort

The network port designated for your application’s secure communications using SSL.

CertPath

Specify a path where the .pfx certificate file is located. Note this must a file path for the .json file to execute.

CertPassword

Enter the password associated with the certificate linked in the ā€œCertPathā€ field.

DNSName

Enter the Domain Name System (DNS) name for the domain associated with the application.

AppPool

Enter the name of the application pool associated with your FOIAXpress Collaboration.

Database Settings

The ā€œDBā€ section contains the settings for installing or upgrading your Collaboration database. In case of a new installation, an agent account will be created.

Database configuration settings including server, user ID, and security options.

Setting

Description

DBServer

Name assigned to the server responsible for storing, retrieving, and managing Collaboration data.

DBName

Name given to the specific database used for FOIAXpress Collaboration.

CreaterDBUserID

Database User ID to be used for this installation. The CreaterDBUserId should have admin rights with the ability to create a new database or database object on the specified Database server.

CreaterDBUserPassword

Password associated with the account used in the ā€œCreaterDBUserIDā€ field.

IntegratedSecurity

The Integrated Security property instructs the SQL

Client to connect to SQL Server using Windows

Authentication through the Security Support Provider Interface (SSPI). Use ā€œYā€ or ā€œNā€ to determine if you are using Integrated Security in this installation.

AgentAccount

The SQL server login account to be created in case of a new database install or the login already setup for the database being upgraded.

AgentAccountPassword

The SQL server Agent Account password specified in the AgentAcount setting.

AgentAccountIntegratedSecurity

Whether integrated security should be used when connecting to the database, default is ā€œNā€.

File Repository Settings

The ā€œFileRepositoryā€ section contains the setting for different file paths used by Collaboration to store files.

File repository structure showing paths for documents and correspondence storage.

Setting

Description

Documents

Enter the file path location for the Documents repository.  

Correspondence

Enter the file path location for the Correspondence repository.

4.7 Authentication Settings

The ā€œAuthenticationā€ section contains settings needed for FOIAXpress to authenticate using FORMS authentication after the application is installed:

Configuration settings for authentication methods including forms and LDAP details.

Setting

Description

Type

Enter the type of authentication used. Options include FORMS, SSO, and EAUTHENTICATION.

Type Comment

Lists the authentication Types that can be entered

in the field above (FORMS, SSO, and EAUTHENTICATION).

Forms

The Forms authentication fields are listed in this subsection. These only need to be filled in if using FORMS authentication.

MembershipProvider

Enter the membership provider type. Options include DATABASE or LDAP.

MembershipProvider Comments

Lists the membership provider types that can be entered in the field above (DATABASE or LDAP).

LdapAccountUsername

Username associated with the LDAP account used for authentication.

LdapAccountPassword

Password associated with the LDAP account username used in the field above.

LdapUrl

URL associated with the LDAP server

LdapSynchronizeAdUsersUserName

LDAP User Name

LdapSynchronizeAdUsersPassword

LDAP Password

LdapSynchronizeAdUsersUrl

LDAP URL

eAuthentication

eAuthentication details are included in this subsection (if eAuthentication is the selected authentication type).

eAuthenticationLogoutUrl

Redirect URL for users when logged out using eAuthentication.

SMTP Server Settings

The ā€œSMTPServerā€ section contains setting for the application’s mail server:

Configuration settings for SMTP server including address and port number details.

Setting

Description

Address

Address of the server responsible for sending email messages from the FOIAXpress application.

PortNo

Port number associated with the SMTP server entered in the ā€œAddressā€ setting.

Configuration

The ā€œConfigurationā€ section contains settings for initial install configuration, setting up the basic details required to log in and get started in Collaboration. This account is the primary administrator account for the application:

Configuration details for an admin user, organization, fiscal year, and act type.

Setting

Description

AdminUser

This subsection allows you to configure the basic details and sign in information for the initial Admin user account you’d like to create in the system.  

Login

Enter the username you’d like to assign for the first Admin application user.

Password

Enter a password for the Admin account associated with the username you entered above.

FirstName

Enter the first name you’d like to associate with this Admin account.

LastName

Enter the last name you’d like to associate with this Admin account.

Email

Enter an email address for this Admin account.  

Organization

Use this subsection to provide your basic organization details.

Name

Enter a name for your organization, as it should appear in the system.

OfficeName

Provide an initial office name for an organization office. You’ll be able to add more offices in the application configuration.

OfficeCode

Enter a system code assigned to this office, to assist with request identification and assignment.

FiscalYear

Use this subsection to configure the fiscal year details for your application.

CurrentFY

Enter the current fiscal year used in your application in ā€œYYYYā€ format (e.g., ā€œ2023ā€).

Starts

Provide a start date for your fiscal year in MM/DD/YYYY format (e.g., ā€œ01/01/2023ā€).

Ends

Provide an end date for your fiscal year in MM/DD/YYYY format (e.g., ā€œ12/31/2023ā€)

ActType

This field is not applicable for FOIAXpress. Do not edit or remove this field.

ATIAPA

This field is not applicable for FOIAXpress. Do not edit or remove this field.

FOIP

This field is not applicable for FOIAXpress. Do not edit or remove this field.

FIPPA

This field is not applicable for FOIAXpress. Do not edit or remove this field.

Inputs.json Settings for Upgrade

This section discusses the inputs.json settings used when upgrading an existing FX Collaboration. For information on using the inputs.json file, see the About the Inputs.json File section of this manual.

NOTE: Some fields that would be required for a new installation should be left as-is for an upgrade. It is important to not edit or remove these fields as this could compromise the integrity of the inputs.json file. These are described where appropriate in the following sections.

Install Type

Use the ā€œInstallTypeā€ section to determine if this is a new installation, or an upgrade for an existing system:

Configuration options for installation type: New or Upgrade indicated with letters N and Y.

Setting

Description

New

Determine whether this is a new installation. For upgrades this should be a ā€œNā€ value.

Upgrade

Determine whether this is an upgrade for an existing application. For upgrades this should be a ā€œYā€ value.

Components

The ā€œComponentsā€ section allows you to determine which components to include with this upgrade. If you included a component in your previous installation, be sure to assign the component a ā€œYā€ value on the corresponding line:

Configuration components showing APP and SCHEDULER as enabled, DB as disabled.

Setting

Description

APP

Include the Collaboration application in this upgrade procedure. This should be a ā€œYā€ value for upgrades.

SCHEDULER

Include the Scheduler in this upgrade procedure. This should be a ā€œYā€ value for upgrades if the scheduler needs to be upgraded.

DB

Include the Database in this upgrade procedure. This should be a ā€œYā€ value for upgrades.

Application and Scheduler

The ā€œAPPANDSCHEDULERā€ section only requires input in the InstallLocation and BackupLocation fields.  

NOTE: All fields not listed above can remain as-is during an upgrade.

Configuration settings for AppScheduler including installation and backup locations, SSL details.

Setting

Description

InstallLocation

Specify a path for the application installation. Note this must be a file path for the .json file the execute.

BackupLocation

Specify a path for the application backup location. Note this must be a file path for the .json file the execute.  

NOTE: The BackupLocation must exist in the specified file path.

Database Settings

The ā€œDBā€ section contains the settings for installing or upgrading your Collaboration database.

NOTE: You do not need to edit the AgentAccount fields during an upgrade, these can remain as-is.

Database configuration settings including server, user ID, and security options.

Setting

Description

DBServer

Name assigned to the server responsible for storing, retrieving, and managing Collaboration data

DBName

Name given to the specific database used for Collaboration.

CreaterDBUserID

Database User ID to be used for this installation. The

CreaterDBUserId should have admin rights with the ability to create a new database or database object on the specified Database server

CreaterDBUserPassword

Password associated with the account used in the ā€œCreaterDBUserIDā€ field.

IntegratedSecurity

Use ā€œYā€ or ā€œNā€ to determine if you are using integrated security in this installation.

File Repository Settings

The ā€œFileRepositoryā€ section contains the setting for different file paths used by the FOIAXpress application to store files.  

NOTE: These fields can remain as-is during the upgrade.Authentication Settings

The ā€œAuthenticationā€ section contains settings needed for FOIAXpress to authenticate using FORMS authentication after the application is installed. These fields can remain as-is during the upgrade.

NOTE: These fields can remain as-is during the upgrade.

SMTP Server Settings

The ā€œSMTPServerā€ section contains setting for the application’s mail server. These fields can remain as-is during the upgrade.

NOTE: These fields can remain as-is during the upgrade.

Configuration

The ā€œConfigurationā€ section contains settings for initial install application configuration, setting up the basic details required to log in and get started in the application. This account is the primary administrator account for the application.  (!!) Note: These fields can remain as-is during the upgrade.

6 Install Collaboration

Before you are ready to run the Install.ps1 file, review the steps below to verify you’ve completed all the steps to this point:

  • Ensure your system meets the minimum requirements

  • Make sure you have connectivity to the servers where the software is being installed

  • Download, verify, and extract the Collaboration Installation package

  • Configure the Inputs.json file for your installation

Once the above prerequisites are complete, follow the steps below to deploy the Collaboration Installation package.

  1. Open Windows Powershell ISE

  2. Use PowerShell to navigate to the location where you extracted the installation package

PowerShell ISE window displaying a command to change directory to a specific path.

  1. Type .\install.ps1 for either install or upgrade

PowerShell command line showing directory navigation and script execution for installation.

  1. If the inputs.json file is in same location as the extracted installation files, simply click enter to execute the installation. Alternatively, if you have file in different location provide this file location, then execute the script.

PowerShell ISE window showing command execution and parameter input prompt.

  1. The installation procedure executes. See the following section for post-installation procedures to verify the application deployed successfully.  

Post-Deployment Configuration

After deploying Collaboration either via new installation or an upgrade of an existing environment, please review the following sections to ensure the post-deployment configuration actions are completed.

Set HTTPS-enabled URL

The Collaboration URL requires an HTTPS endpoint.  

NOTE: Use a fully qualified domain name while configuring the HTTPS endpoint in the Collaboration Room URL.Follow the steps below to update the endpoint to HTTPS.

  1. Access your FOIAXpress application as an Administrator

  2. Click the Administration option from the top toolbar.

  3. Under Administration, select the Collaboration Room option to open the Collaboration Configuration screen

  4. Locate the Collaboration Room URL field, and update the URL to your HTTPS-enabled URL

Collaboration configuration settings with highlighted URL and user credentials fields.

  1. Click Save to save the changes

Add DNS Binding

For non-public Collaboration environments, you are also required to add a DNS binding to allow Collaboration to function correctly.

Add Binding (Single Server)

If your Collaboration resides on the same server as your FOIAXpress application, you must add a DNS binding to the ā€œhostsā€ file. Follow the steps below to add this binding.

  1. On the application server, locate and open the ā€œhostsā€ file (C:\Windows\system32\drivers\etc\)

  2. In the ā€œhostsā€ file, add the text shown below, replacing the highlighted portion with your qualified DNS name for the Collaboration site

A sample HOSTS file showing IP address and corresponding host name entries.

  1. Save and close the ā€œhostsā€ file

Add Binding (Separate Collaboration and Application Servers)

If your Collaboration and application reside on separate servers as your FOIAXpress application, you must add a DNS binding to the ā€œhostsā€ file as described below:

  1. On the FOIAXpress application server, locate and open the ā€œhostsā€ file (C:\Windows\system32\drivers\etc\)

  2. In the ā€œhostsā€ file, add the text shown below, replacing the part (A) with your Collaboration site’s local IP address, and part (B) with your qualified DNS name for the Collaboration site:

Sample HOSTS file showing IP address mappings and highlighted host names.

  1. Save and close the ā€œhostsā€ file.