Downloading Fortify SSC release
sld.microfocus.com
- After logging in, select account.
- Security Fortify Runtime -> Security Fortify Scanning User Subscription SW E-LTU -> {version} -> Fortify_SSC_Server_{version}.zip
Downloading Fortify rulepacks
https://support.fortify.com/admin/rulepacks.jsp
- Download Rulepacks -> Rulepacks release -> {latest} -> SCA
Installation
- Install Java OpenJDK
- Extract the Fortify SSC installation archive
- Extract the
apache-tomcat-*.zip
in the Fortify SSC archive to/opt
- Edit Tomcat's
conf/server.xml
file accordingly (see thetomcat.md
file) - Ensure Tomcat's
bin/*.sh
files are executable - Add
@reboot root bash -c /opt/tomcat/bin/startup.sh
to/etc/crontab
- Start Tomcat
- Copy the
ssc.war
file from theFortify_*_Server_WAR_Tomcat.zip
to Tomcat'swebapps/
directory - Wait for Tomcat to automatically extract the
ssc.war
file tossc/
- Ensure Tomcat's root path redirects to
/ssc
:
- Ensure that
ROOT/index.jsp
has the below content:
<% response.sendRedirect("https://fortifydomain.example.com/ssc"); %>
Database
MySQL [(none)]> CREATE DATABASE fortify CHARACTER SET latin1 COLLATE latin1_general_cs;
SSO configuration
- Create local users in the Fortify Web GUI with usernames matching their email address in Keycloak
- Fortify server backend
- Create a self-signed cert with password-protected private key
openssl req -x509 -sha256 -days 3650 -newkey rsa:4096 -keyout private_key.pem -out certificate.pem
- Export the certs to a pkcs12 bundle
openssl pkcs12 -export -in certificate.pem -inkey private_key.pem -name saml > saml.p12
- Create a Java keystore with the cert bundle
keytool -importkeystore -srckeystore saml.p12 -destkeystore store.keys -srcstoretype pkcs12 -alias SAML
- Fortify Web GUI
Configuration -> SSO -> SAML: # Download the metadata from your IdP manually IDP metadata location: file:///opt/fortify_certs/keycloak-metadata.xml # This can be found in the IdP metadata default IDP: https://keycloak.example.com/realms/devops # The public URL of the Fortify instance SP entity ID: https://fortify.example.com/ssc/ SP alias: fortify_ssc # Location of the Java keystore with the cert bundle. Preceed path with file:// Keystore location: file:///opt/store.keys # Password of the Java keystore with the cert bundle Keystore password: **************** # Alias of the cert bundle you imported into the Java keystore Signing and encryption key: SAML # Password of the private key in the cert bundle Signing and encryption key password: **************** SAML name identifier: NameID
- Keycloak web GUI
- Go to
https://fortify.example.com/ssc/saml/metadata
to download metadata file - Import metadata file into Keycloak as a client configuration
- Go to
Disabling SSO from the backend
- Login to Fortify's database
use fortify;
select * from configproperty where propertyName = 'saml.enabled'
update configproperty set propertyValue = 'false' where propertyName = 'saml.enabled'
;- Restart Fortify's webserver