↳ General Environment Variables
↳ Authorization and Authentication
This web user interface for use by Digital Health Pass administrators. This interface provides the following key functions for administrators:
- System Administrator can create and delete Customers and Customer Administrators
- Customer Administrators can create and delete Organizations and Organization Administartors
- Customer Administatrators can create, modify and manage validation Rules
- Customer and Organization Administrators can create or revoke Verifier Credentials (used byt the Verifer mobile app)
The runtime toplogy is different when running on a local development environment vs a production deployment. To get started in either mode:
This will install all 3rd party dependencies in the root folder as well as in the /client
and /server
folders.
In local development mode, the start script runs two processes:
- create-react-app starts the React UI Client on port
3000
. - Server (node express server) is started on port
5000
.
This will start both the UI client and Server in development
mode.
In local development mode, both the UI Client and the Server are run on localhost. The UI Client communicates with the Server and the Server communicates with the APIs (running remotely). The port configurations for the UI Client and Server can be found in /client/.env
and /server/.env
respectively.
UI Client (3000) --> Server (5000) --> API (see below)
You can must either configure API_HOST
and API_PORT
in /server/.env
to point to your remote API endpoint or you must implement your own mock server for local testing and development.
In production mode, we run one process inside the Docker container, the Server process. The Server process services requests for both static web assets (webpacked react app) and backend requests to services - requests to /api/*
are proxied to actual backend service(s) by the Server process. node ./server/index.js
is run by the Docker container to start the Server process. The path to the backend services is provided by Helm Chart files.
This will output the built client code into dist/client
and copy the server code into dist/server
it will also copy the /charts
folder into dist/charts
. This step is typically performed prior to running a docker build
The following environment variables must be set before starting the application regardless of the executing environment.
Environment Variable | Value |
---|---|
PORT | Port used by Express Server (default: 5000) |
USE_HTTPS | true or false. If true, then endpoints must be accessed via https, otherwise http |
NODE_ENV | 'development' or 'production' |
VERIFIER_API_URL | The url of the DHP Verifier API |
CONFIG_API_URL | The url of the DHP Verifier Configuration API |
METERING_API_URL | The url of the DHP Metering API |
This user interface provides a login function which authenticates and authorizes a user via the Verifier API endpoint. There are 3 defined roles with associated scopes as follows:
- System Administrator
- Customer Administrator
- Organization Administrator
Scopes | Purpose |
---|---|
sysadmin | Access for administring customers, organization, rules and credentials |
custadmin | Access for administring organizations and credentials |
orgadmin | Access for administoring credentials |
This section lists open source libraries used in this SDK.
Table 3: Libraries and sources for this SDK