Configure the Node.js application
The Node.js application ships with the Domino AppDev pack. You will need the following files from the AppDev Pack kit:
Install the Node.js application
To install the Node.js config test application perform the following steps:
- create a new empty directory
- extract the
domino-cfgtest-1.0.9.tgzinto the new directory.
C:\>mkdir cfgtest C:\>cd cfgtest C:\cfgtest>tar xvf c:\temp\domino-cfgtest-1.0.9.tgz x package/package.json x package/auth.js x package/config.example.yml x package/config.js x package/iam.js x package/index.js x package/readfile.js x package/README.md x package/views/index.pug
The application source files will now be in the subdirectory called
package. This is the
directory where the application stores source files, configuration files and dependencies.
Execute the following
npm install command to install the required modules that ship with
the AppDev Pack:
C:\cfgtest\package>npm install c:\temp\domino-domino-db-1.7.0.tgz c:\temp\domino-node-iam-client-1.6.1.tgz ... added 173 packages from 92 contributors and audited 230 packages in 21.817s
npm install command again to install additional required modules from
the Node global package registry:
C:\cfgtest\package>npm install ... added 286 packages from 302 contributors and audited 781 packages in 32.138s
Use this command to copy the sample application configuration file to the expected file name.
C:\cfgtest\package>copy config.example.yml config.yml 1 file(s) copied.
config.yml later in the setup guide after completing additional configuration steps.
Configure the Domino user for the Node.js application
The steps in this section are similar to those described for configuring user IDs in the Proton Test Utility and the IAM functional ID sections of the setup guide.
The examples in these steps assume the following:
- The Domino user name:
Sample App/Jumbo Cloud Services
- The Domino short name:
- The user's certificate file:
- The user's private key file in it's unencrypted form:
- The user's certificate is signed by the Internal CA.
Configure the application in IAM Admin
Access the IAM Admin endpoint,
https://auth.jumbocloudservices.com:8443, to create the application
To create the application configuration provide the following data under the Basic Information tab:
- Application name - a unique name in IAM which identifies the application in IAM Admin.
- Application description - free-form text which describes the application in IAM Admin.
- Application homepage URL - the
https:URL where the application is accessible by end users.
- Application callback URL - the
https:URL where the IAM service redirects the user after they have authenticated with IAM. The application developer provides this information. The configuration test application uses the
- Proton accesses - the config test has code to use domino-db and Proton, therefore we need to provide the following:
- Enable Domino Database Access - this is the grant that IAM requests from the user which gives authorization to the application to make domino-db calls on behalf of the user.
- Functional ID - this is the application's Domino user ID in LDAP format. This Domino user must have the specific ACL role in
the database to allow it to make
Act-as-Useroperations on the database. More on this when we configure the Domino database
The IAM configuration generates the following data:
- Application id
- Application secret
Under the application's Scopes tab add Calendar Read Access. This step requests that the user authorize this additional grant to the application.
Configure the server certificate
In this guide, we secure the configuration test endpoint with a Let's Encrypt certificate. Instructions for obtaining the certificate are outside the scope of this document, but we use this directory to store all the files:
Directory of c:\letsencrypt-certs\config-test.jumbocloudservices.com 12/11/2019 09:09 AM 1,648 chain.crt 12/11/2019 09:09 AM 2,309 config-test.jumbocloudservices.com.crt 12/11/2019 09:09 AM 1,643 config-test.jumbocloudservices.com.csr 12/11/2019 09:09 AM 3,243 config-test.jumbocloudservices.com.key 12/11/2019 09:09 AM 3,957 fullchain.crt 12/11/2019 09:09 AM 2,923 getssl.cfg