Introduction
This describes how to integrate the Digipass S3 JavaScript App SDK into your web app. If you use the Digipass S3 Cordova App SDK, you can also use this because the Cordova App SDK uses the same API as the JS App SDK.
This is intended for an intermediate web developer with a strong working knowledge of JavaScript. Using this document, you can create a web app that uses Digipass S3 Authentication Software for user registration and authentication.
Overview
The Digipass S3 Web App SDK for JavaScript works in tandem with the Digipass S3 App SDK for Android and iOS, API Server, and Authentication Server to integrate FIDO authentication. The Web App SDK is bundled into a separate web app, nnlappsdk-<version>.war.
The Web App SDK offers the following benefits:
Simplifies integration. A developer can make a single call to trigger the registration, authentication, list registrations, and deregistration processes.
Handles all network communications with the API Server.
Enables the developer to configure the location of the Auth Server used to handle UAF and FIDO2 requests.
Interacts with the user to complete FIDO operations such as registration and authentication.
The Web App SDK can also be used independently of the API Server. For example, if you are using your own proxy or custom API Server, you can still use the Web App SDK.
Getting Started
To fully understand the materials presented here, we strongly urge you to read many of the pages on the Start menu first.
By using the App SDK for Javascript (App SDK), your web app can implement FIDO2 and UAF (through OOB authentication) operations to perform strong authentication without relying on passwords. The App SDK performs authentication by using the adaptive policies, FIDO policies, authentication methods, and data lists configured on the Digipass S3 Server.
The Digipass S3 JavaScript App SDK can also be used independently of the Digipass S3 API Server. For example, if you are using your own proxy, you can still use the Digipass S3 JavaScript App SDK.
A sample application that you can examine and customize is described in Exploring Tutorial Web App.
Supported Platforms
Using the FIDO2 functionality of the App SDK for JavaScript requires a FIDO2-compatible browser. For example, Firefox 60.0 and later, or Google Chrome 67 and later.
What’s in the SDK?
The App SDK package contains the following folders and files:
Folder Name / File Name | Description |
|---|---|
src | Folder containing Tutorial Web App source, libraries, and web content to build a fully functional FIDO-enabled web application. |
docs | Folder containing Tutorial Web App and JavaScript SDK documentation. |
licenses | Folder containing license files of 3rd party software used in the App SDK. |
facets.war | Web application that serves UAF facets for an RP App, contains META-INF/Manifest.MF and WEB-INF/web.xml. |
nnlappsdk.war | App SDK for JavaScript |
nnlfedapp.war | Web application that implements a standalone Federated FIDO credential management page which is accessible through the OIDC flow. See Utility apps. |
nnlsignin.war | Web application that implements a sign-in page for your end users to sign in with Federation credentials. Works with Digipass S3's Adapters for Federation Servers. See API Server Configuration section Utility App Configuration. |
react | Configuration for ReactJS |
certs | tls certificates |
version.txt | File containing the App SDK version information. |
The App SDK for Javascript is hosted as a web app named nnlappsdk-9.3.0.war. This app is found inside the gateway (API Server) directory in the server installation package. This app contains all the required libraries. Ensure that this app is running on the same origin as the API Server.
App SDK Modules
The App SDK consists of two modules: an Adaptive library and an App SDK library. These are referred to within your application as adaptive.js and appsdk.js and are located in the nnlappsdk-9.3.0.war.