CAST AIC Portal is unsupported since the end of 2020. CAST encourages users to switch to AIP Console where possible.
What is the CAST AIC Portal?
The CAST AIC Portal is a web application designed to support the delivery of the application source code by the Delivery Manager(s) - when accessed, the CAST AIC Portal will offer the ability to register a new application for analysis as well as the ability to deliver the source code using the CAST Delivery Manager Tool (DMT) (which is a dedicated workstation tool provided by CAST to extract and deliver the source code).
As such, multiple Delivery Managers can run the CAST Delivery Manager Tool on their own local machines and package only the source code they need to. Source code packaged by Delivery Managers is stored in one central location managed by the CAST AIC Portal, which can then be retrieved by the AI Administrator using the CAST Management Studio (which is configured to retrieve source code from the same central storage location defined in the CAST AIC Portal). Please see Source code delivery - an introduction for more detailed information.
The CAST AIC Portal is provided as a .WAR file (CAST-AICP.war) and is designed to be deployed on a supported Application Server (for example Apache Tomcat). The standard deployment is very similar to the deployment of the CAST dashboards (this is described here: Deploy the CAST web applications).
How many CAST AIC Portals do I need to install?
CAST recommends using one CAST AIC Portal to manage source code for all Applications that you need to analyze with CAST. However, the CAST AIC Portal is CAST AIP version aware and can only manage Applications that are being administered with the same release of CAST AIP (in other words you cannot mix Applications that are being managed on CAST AIP 8.2.x with Applications that are being managed on CAST AIP 8.3.x - for example).
Specific use cases for deployment of the CAST AIC Portal
The following lists the various use cases that may be encountered when deploying the CAST AIC Portal:
Your Delivery Managers are exclusively located on the same internal network as the CAST AIC Portal
The CAST AIC Portal is installed on a machine on the internal network and can be accessed via a URL available across the internal network. Nothing further is required other than following the installation instructions in this page - this is the standard deployment scenario.
Your Delivery Managers are located on the same internal network as the CAST AIC Portal and ALSO outside the company firewall
In this example, you have Delivery Managers that are located internally and externally (i.e. to the local network). This is a more advanced deployment scenario. This setup involves:
- Installing the CAST AIC Portal as detailed in this page
- Additionally installing Apache Web Server as a public facing server in reverse proxy mode so that external users can access internal resources (i.e. the CAST AIC Portal installed on Apache Tomcat) via the internet.
- Additionally setting up a fully qualified domain name that all Delivery Managers (whether internal or external) can use to access the CAST AIC Portal via the Apache Web Server. For example: http://aicportal.company.com
- You may also need to setup a DMZ in which to place the Apache Web Server or configure port forwarding to allow external users access to the Apache Web Server.
You can find out more about installing Apache Web Server as a public facing server in reverse proxy in Setting up a Reverse Proxy on Apache web server.
Specific configuration considerations and prerequisites
The CAST AIC Portal has some specific configuration settings and prerequisites that need to be addressed before you can proceed with the installation:
Source Code Delivery Folder
As explained in Source code delivery - an introduction, in order to function correctly, the CAST AIC Portal requires a Delivery folder: a central location for storing successive and compressed versions of an application's source code as packaged by the Delivery Manager(s) using the CAST Delivery Manager Tool (via the CAST AIC Portal).
This folder must ALSO be available to the CAST Management Studio in order to access the code that is delivered by the Delivery Manager(s). Please see Where should the Delivery folder be located for more information.
If you are using multiple instances of the CAST Management Studio (to work with multiple Management Services) you can allow them to interact with the same CAST AIC Portal (i.e. the same Delivery folder) without risk of data corruption (note however that only one single instance of the CAST Management Studio should manage one single Management Service).
Other considerations and prerequisites
Machine | The CAST AIC Portal can be hosted on any machine in your local network:
| |
Java JRE | Must be installed on the machine that will host the Application Server. Please see:
| |
Application Server | Must be installed on a compatible machine. Please see:
Note that:
| |
Web browser | Required for accessing the CAST AIC Portal. Please see Supported Platforms about Web Browser compatibility. | |
WAR file | The CAST AIC Portal is provided as a .WAR file (CAST-AICP.war) - it can be retrieved from the WARS folder located in the CAST installation folder: |
Pre-installation check list
Before beginning the installation process, please ensure that you have carried out all of the following tasks and that the following requirements have been met:
Ensure you have read all Release Notes accompanying CAST products for any last-minute information | |
Decide where the CAST AIC Portal will be installed - CAST Administration workstation, separate dedicated machine or machine used for other CAST AIP web applications. | |
Ensure that you know where Source Code Delivery Folder is located. | |
Ensure that your user login on the target machine has sufficient user privileges to install applications (see Appendix - CAST Administration workstation installation and hardware requirements) | |
Make sure you have the required .WAR file ready for deployment |
Installation procedure
This document assumes you are using Apache Tomcat in a Windows environment to host the CAST AIC Portal.
The installation process is divided into various steps:
Step 1: Deploy and configure the CAST-AICP.war file on your application server
Deploy the WAR file
Locate the CAST-AICP.war file and move it to the web application installation location. By default on Apache Tomcat this is set to:
CATALINA_HOME\webapps
If the Apache Tomcat server is running, the .WAR file will then be unpacked and deployed in a folder called "CAST-AICP". You should now be able to access the CAST AIC Portal using the following URL (if your Application Server is configured to accept requests on port 80, you can omit the <port_number>):
http://<server_name>:<port_number>/CAST-AICP
Note that:
- you can find out more about the CATALINA_HOME environment variable and how to configure it in CAST Dashboard Package - Apache Tomcat installation and configuration options
- you can also use the deploy action in Apache Tomcat manager to deploy the WAR file:
Define the Source Code Delivery folder
When you first access the CAST AIC Portal, you will be presented with the following message:
"Source code delivery folder path is not defined in web.xml. Please update your web.xml and restart the CAST AIC Portal."
This indicates that the Source Code Delivery Folder has not yet been defined and you need to do so before you can access the CAST AIC Portal. To do so, edit the web.xml file with a text editor (this is the location on Apache Tomcat):
CATALINA_HOME\webapps\CAST-AICP\WEB-INF\web.xml
Locate the following entry in the web.xml:
<!-- <context-param> <param-name>sourceCodeDeliveryFolder</param-name> <param-value>[sourceCodeDeliveryFolderPath]</param-value> </context-param> <context-param> <param-name>extensionDirectoryPath</param-name> <param-value>[extensionDirectoryPath]</param-value> </context-param> -->
First modify this entry by moving the <!-- comment tag as follows - this uncomments the "sourceCodeDelivery" parameter and keeps "extensionDirectoryPath" parameter in comment (this parameter should be ignored as it is not yet implemented). This will give you the following:
<context-param> <param-name>sourceCodeDeliveryFolder</param-name> <param-value>[sourceCodeDeliveryFolderPath]</param-value> </context-param> <!-- <context-param> <param-name>extensionDirectoryPath</param-name> <param-value>[extensionDirectoryPath]</param-value> </context-param> -->
Now change the <param-value> value of the "sourceCodeDelivery" parameter to the location of your Source Code Delivery Folder as shown below:
<context-param> <param-name>sourceCodeDeliveryFolder</param-name> <param-value>D:\CAST\DELIVERY</param-value> </context-param> <!-- <context-param> <param-name>extensionDirectoryPath</param-name> <param-value>[extensionDirectoryPath]</param-value> </context-param> -->
You can use the following syntax depending on the location of the Source Code Delivery Folder:
Type | Example syntax | Notes |
---|---|---|
Drive letter path | D:\CAST\DELIVERY (folder local to the host machine) | Please use this syntax when the CAST AIC Portal and the Delivery folder are located on the SAME machine. In this situation, always enter an absolute path to the local drive containing the Delivery folder (for example D:\ CAST\DELIVERY). Please DO NOT use a mapped drive path (created using the Windows GUI or the subst Windows command) that points to a folder on the local machine or to a remote network share - doing so can cause an error that will prevent the CAST AIC Portal from functioning. |
UNC path | \\HOST\CAST\DELIVERY (folder on a remote network share) | Please use this syntax only when the CAST AIC Portal and the Delivery folder are located on different machines. Note that forward slashes will also function. |
Please take into account the following notes about required permissions for the Delivery folder:
|
Once the changes have been completed, save the web.xml file and then restart your application server so that the changes are taken into account.
Test access to the CAST AIC Portal
You should now be able to access the CAST AIC Portal using the following URL (modify this to your own environment):
http://<server_name>:<port_number>/CAST-AICP
Optional configuration for those running the CAST AIC Portal behind a reverse proxy server
This case applies when direct access to the CAST AIC Portal is denied to users and instead a different public URL is handled by a reverse proxy. For example, the CAST AIC Portal is hosted on a Tomcat server with HTTPS open on port 8443. The reverse proxy then makes the CAST AIC Portal available on port 443 via https://aicportal.castsoftware.com (see Setting up a Reverse Proxy on Apache web server) for more information.
If you want to configure the CAST AIC Portal in this way, you need to make an additional configuration change to the CAST AIC Portal. Locate the following entry in the web.xml located at CATALINA_HOME\webapps\CAST-AICP\WEB-INF\web.xml:
<!-- <context-param> <param-name>publicUrl</param-name> <param-value>http[s]://proxy-host[:proxy-port]/path-to-aicportal</param-value> </context-param> -->
Modify this entry by removing the <!-- and --> comment tags - if you forget to do this, the entire entry remains in comment and will be ignored. Then change the <param-value> value to the public URL of the CAST AIC Portal as shown in the example below:
<context-param> <param-name>publicUrl</param-name> <param-value>https://aicportal.castsoftware.com</param-value> </context-param>
Once the changes have been completed, save the web.xml file and then restart your application server so that the changes are taken into account.
Step 2: Configure user authentication
Step 2 involves configuring how your users will authenticate with the CAST AIC Portal to download the CAST Delivery Manager Tool and to deliver source code. Most organizations opt for LDAP/Active Directory integration so that users can use their corporate username/password to access the resources they need. The CAST AIC Portal also has a built in username/password authentication mechanism which is enabled "out of the box".
Please see Configuring user authentication for more information.
Additional information
Once the CAST AIC Portal is installed, you can find out more information about how to create Domains and Applications and add Delivery Managers to your Applications, here:
You can find additional information about advanced security configuration changes for the CAST AIC Portal, such as:
- CAST AIC Portal - Configuring user authentication
- CAST AIC Portal - Configuring the Audit Trail feature
- CAST AIC Portal - Encrypt login and password for LDAP
There is also additional information about implementing an enhanced security configuration for your application server in Common security configuration options for web application deployment:
- Configuring the use of secure https protocol with Tomcat for the CAST web applications
- Setting up a Reverse Proxy on Apache web server
- Disabling insecure HTTP methods in Apache Tomcat - webdav
- Disabling weak SSL cipher suites to improve security