Product Documentation

Installation Instructions on a Server with a FIDO2 Server on a SEPARATE Server

  1. If installing this sample application on a separate server, StrongKey's software stack must be installed to make it work. Follow these steps to do so:

    • Complete Steps 1–5 of the FIDO server installation instructions but come back here after completing Step 5

    • Edit the install-skfs.sh script in a text editor; on the line INSTALL_FIDO=Y, change the value of Y to N

    • Run the script install-skfs.sh

       sudo ./install-skfs.sh
  2. Continue the installation as shown under Installation Instructions on a Server with a FIDO2 Server on the SAME Server. Note that this assumes SKFS was previously installed on the server without modifying the install-skfs.sh script.

Installation Instructions on a Server with a FIDO2 Server on the SAME Server

  1. Create the following directories to configure the WebAuthn servlet home folder:

    sudo mkdir -p /usr/local/strongkey/sfaboa/etc
  2. Create a configuration file for the service provider web application.

    sudo vi /usr/local/strongkey/sfaboa/etc/sfaboa-configuration.properties
  3. Enter the appropriate values (listed in []) to configure the sample application with SKFS and an email server (Gmail may also be used as the mail server with a personal Gmail account; enable access through the Google account’s security settings). If the mail server has a self-signed certificate, make sure to import it in the GlassFish TrustStore before continuing.

    sfaboa.cfg.property.apiuri=https://**[hostname of FIDO Server]**:8181
    sfaboa.cfg.property.mailhost.type=**[SendMail or SSL or StartTLS]**
    sfaboa.cfg.property.mailhost=**[localhost or hostname of mailhost]**
    sfaboa.cfg.property.mail.smtp.port=**[25 (SendMail) or mail server's port]**
    sfaboa.cfg.property.smtp.from=**[local-part of email address]**
    sfaboa.cfg.property.smtp.fromName=**[Human readable name associated with email]**
    sfaboa.cfg.property.smtp.auth.user=**[Username used to login to mail server]**
    sfaboa.cfg.property.smtp.auth.password=**[Password used to login to mail server]**
    sfaboa.cfg.property.email.subject=Verify your email address
    sfaboa.cfg.property.email.type=HTML

    Save and exit.

  4. Download the service provider web application distribution sfaboaserver-vx-xx-dist.tgz:

    wget https://sourceforge.net/projects/strongkeyfido/files/v4.12.0/sampleapps/java/sacl/sfaboa/sfaboaserver-v4.12.0-dist.tgz
  5. Extract the downloaded file to the current directory:

    tar xvzf sfaboaserver-v4.12.0-dist.tgz
  6. Execute the install-sfaboaserver.sh script as follows:

    sudo ./install-sfaboaserver.sh
  7. Test that the servlet is running by executing the following cURL command and confirming that the API Web Application Definition Language (WADL) file is returned in response.

    curl -k https://localhost:8181/sfaboa/fido2/application.wadl
  8. The SFABOA server is installed. Continue to install the front-end Angular application.

  9. Switch users to (or login as) the strongkey user. The default password for the strongkey user is ShaZam123.

    su - strongkey
    
  10. Download the web application distribution for SKFS sfaboa-ui-dist.tar.gz.

    wget https://sourceforge.net/projects/strongkeyfido/files/v4.12.0/sampleapps/java/sacl/sfaboa/sfaboa-ui-dist.tar.gz
  11. Extract the downloaded file.

    tar xvzf sfaboa-ui-dist.tar.gz
  12. Copy all the files to the Payara docroot.

    mkdir /usr/local/strongkey/payara5/glassfish/domains/domain1/docroot/boa
    cp -r dist/* /usr/local/strongkey/payara5/glassfish/domains/domain1/docroot/boa
  13. Optional: Modify the background image and the logo image.

    cp <your background> /usr/local/strongkey/payara5/glassfish/domains/domain1/docroot/assets/app/media/img/bg/background.jpg
    cp <your logo> /usr/local/strongkey/payara5/glassfish/domains/domain1/docroot/assets/app/media/img/logo/logo.png
  14. The application is deployed in docroot on the SFABOA server. Access it as follows in a browser:

    https://<FQDN-of-sfaboa-server>:8181/boa

 

Removal

To uninstall the service provider sample web application, follow the Removal instructions. Removing SKFS also removes the sample service provider web application and sample WebAuthn client. If this SFABOA was installed on top of SKFS, the cleanup script will erase SKFS as well. If this was a standalone install, the cleanup script will only remove the SFABOA application.

Contributing to the Sample Service Provider Web Application

If you would like to contribute to the sample service provider web application project, please read CONTRIBUTING.md, then sign and submit the Contributor License Agreement (CLA).

More Information on FIDO2

For detailed information on the FIDO2 project, visit the technical specification:

For more information on the originating jargon and related terms, visit the Internet Engineering Task Force (IETF) Request for Comments (RFC):

Licensing

This project is currently licensed under the GNU Lesser General Public License v2.1.