Skip to main content
Skip table of contents

Cloudaware Application in ServiceNow

This article explains how to configure the Cloudaware ServiceNow application. Cloudaware extends the Configuration Item table in ServiceNow with additional cloud inventory data.

Prerequisites

1. Ensure you have the license for ServiceNow IntegrationHub Enterprise Pack.

2. Ensure you have the license for ServiceNow Workflow Studio.

3. Сontact support@cloudaware.com to get credentials required for this integration (Service Account private key, the .p12 certificate file, Project Id, and Dataset Id).

4. Download the .xml file for application installation.

Cloudaware Application Installation File

Configure Cloudaware application in ServiceNow

Cloudaware provides credentials for setting up ServiceNow-to-Google integration. This integration is required for authorization based on JWT. JWT Provider will be used as Connection when configuring the data update workflow.

Set up ServiceNow-to-Google integration

1. Set up JWT key(a) and JWT certificate(b):

a) Go to All → System OAuth → JWT Keys.

Cloudaware app in ServiceNow - SNow-to-Google - JWT keys.png

Click New and fill out the form:

Cloudaware app in ServiceNow - SNow-to-Google - JWT key details.png

WHERE
Name: set up a meaningful name, e.g. Google JWT Key
Signing Key: insert notasecret
Signing Keystore: click the magnifier icon (Lookup using list) to create a new signing keystore - see the point b) below

b) In a pop-up window, click New to create a JWT certificate that will serve as a signing keystore:

Cloudaware app in ServiceNow - SNow-to-Google - JWT certificate details.png

WHERE
Name: set up a meaningful name, e.g. Google JWT Certificate
Type: select 'Java Key Store' from the list
Key store password: insert notasecret

Click the paper clip icon (Manage attachments):

Cloudaware app in ServiceNow - SNow-to-Google - JWT certificate - attach file.png

Click Choose file to attach the .p12 certificate file provided by Cloudaware. Click Submit.

c) Go back to setting up the JWT key. In Signing Keystore, click the magnifier icon (Lookup using list) and select the certificate Google JWT Certificate in a pop-up window.

Cloudaware app in ServiceNow - SNow-to-Google - select Google JWT certificate.png

Click Submit.

2. Set up JWT Provider.

Go to All → System OAuth → JWT Providers:

Cloudaware app in ServiceNow - SNow-to-Google - JWT providers.png

Click New and fill out the form:

Cloudaware app in ServiceNow - SNow-to-Google - JWT provider details.png

WHERE
Name: set up a meaningful name, e.g. Google JWT Provider
Signing Configuration: click the magnifier icon (Lookup using list) and select the configured Google JWT Key from the list

Cloudaware app in ServiceNow - SNow-to-Google - select Google JWT key.png

Click on the name of the JWT provider (in this example, Google JWT Provider) to edit settings.

Select the tab 'Standard Claims'. Add the following claims:
iss - string - Service Account email address provided by Cloudaware
sub - string - Service Account email address provided by Cloudaware
aud - string - https://oauth2.googleapis.com/token

Cloudaware app in ServiceNow - SNow-to-Google - JWT provider - standard claims.png

Click Update.

3. Set up Application Registry:

Go to All → System OAuth → Application Registry.

Cloudaware app in ServiceNow - SNow-to-Google - application registry.png

Click New → select 'Connect to a third party OAuth Provider' from the list.

Fill out the form:

Cloudaware app in ServiceNow - SNow-to-Google - application registry details.png

WHERE
Name: set up a meaningful name, e.g. Google JWT
Client ID: set up as notneeded
Client secret: set up as notneeded
Default Grant type: select 'JWT Bearer' from the list
Token: click the lock icon to insert https://oauth2.googleapis.com/token → click the lock icon to save
Refresh Token Lifespan: 10

Click Submit.

Click on the name of OAuth Entity Profile (in this example, Google JWT default_profile) to edit settings:

Cloudaware app in ServiceNow - SNow-to-Google - application registry - oauth entity profile.png

Next to the JWT Provider, click the magnifier icon (Lookup using list) and select the Google JWT Provider from the list.

Click Update.

4. Go back to JWT Providers. Select the configured Google JWT Provider from the list.

Select the tab 'Custom Claims'. Add a new claim: scope - string - https://www.googleapis.com/auth/bigquery.readonly

Cloudaware app in ServiceNow - SNow-to-Google - JWT provider - custom claims.png

Click Update.

5. Set up Credentials.

Go to All → Connections & Credentials → Credentials.

Cloudaware app in ServiceNow - SNow-to-Google - connections - credentials.png

Click New → select 'Auth 2.0 Credentials' from the list. Fill out the form:

Cloudaware app in ServiceNow - SNow-to-Google - connections - credentials details.png

WHERE
Name: set up a meaningful name, e.g. Google JWT Credentials
OAuth Entity Profile: select the configured OAuth Entity Profile (in this example, Google JWT default_profile)

Click Update.
Click Get OAuth Token to test the connection.

Go to All → Connections & Credentials Aliases. Click New.

Set the alias as Google JWT and save it by right-clicking on the upper grey menu.

Cloudaware app in ServiceNow - SNow-to-Google - connections - save aliases.png

In the section that appears below, click New to create a HTTP(s) Connection.

Cloudaware app in ServiceNow - SNow-to-Google - connections - https connection.png

Fill out the form:

Cloudaware app in ServiceNow - SNow-to-Google - connections - https connection details.png

WHERE
Name: set up a meaningful name, e.g. Google JWT Connection
Credential: select Google JWT Credentials from the list
Check the box 'URL builder'. Insert the link http://bigquery.googleapis.com in 'Host'; insert /bigquery/v2/ in 'Base path’.

Click Submit.

Install the Cloudaware application

1. Go to All → Retrieved Update Sets:

Cloudaware app in ServiceNow - install the app - retrieved update sets.png

2. Click the link Import Update Set from XML.

Cloudaware app in ServiceNow - install the app - import update set from XML.png

3. Choose the .xml file downloaded before. Click Upload.

Cloudaware app in ServiceNow - install the app - upload the file.png

4. Select the created application.

Cloudaware app in ServiceNow - install the app - select the app.png

5. Click Preview Update Set.

Cloudaware app in ServiceNow - install the app - preview update set.png

6. Click Commit Update Set to install the application.

Cloudaware app in ServiceNow - install the app - commit update set.png

Please allow some time for the application to be created.

Configure the workflow

1. Go to All → Workflow Studio:

Cloudaware app in ServiceNow - configure the workflow - workflow studio.png

2. Open 'Flows'. Select the flow Update Import Settings and Fields Mapping.

Cloudaware app in ServiceNow - configure the workflow - update import settings and fields mapping (flow).png

Click TestRun test*:

Cloudaware app in ServiceNow - configure the workflow - test run.png

*This should be done once only after the application is installed.

3. Go back to all flows. Set descending order in the column 'Updated' for quicker search. Select the flow Import All CI Data from Cloudaware from the list.

Cloudaware app in ServiceNow - configure the workflow - import all CI data (flow).png

4. In TRIGGER, click on the section to schedule a trigger. Select 'Scheduled' → Daily* → set the time:

Cloudaware app in ServiceNow - configure the workflow - schedule a trigger 1.png
Cloudaware app in ServiceNow - configure the workflow - schedule a trigger 2.png

*The recommended frequency is once a day.

Click Done.

5. In ACTIONS, click Set Flow Variables to select:

Cloudaware app in ServiceNow - configure the workflow - set flow variables.png

WHERE

Connection Alias - select the Connections & Credentials Aliases configured in the section 'Set up ServiceNow-to-Google integration' (in this example, Google JWT)

Cloudaware Import Settings Table - the value is auto-populated as this is a system table

Cloudaware Import Fields Mapping Table - the value is auto-populated as this is a system table

Project Id - use the Import Project Id provided by Cloudaware

Dataset Id - use the Import Dataset Id provided by Cloudaware

Click Done.

6. Save and activate the workflow.

Please allow some time for the data to be available. Check the status of data upload to tables.

Tables

As a result, the following tables will be created in ServiceNow:

System tables

Label

Name

Cloudaware CI

x_ca_cmdb_ci

Cloudaware CMDB Schema

x_ca_cmdb_schema

CI Class Import 

x_ca_cmdb_ci_class_import

Cloudaware Import Settings

x_ca_cmdb_ci_class_import_settings

Cloudaware Import Fields Mapping

x_ca_cmdb_import_fields_mapping

Application tables

Label

Name

AWS Account

x_ca_cmdb_aws_account

AWS DynamoDB Backup

x_ca_cmdb_aws_dynamo_db_backup

AWS DynamoDB Table

x_ca_cmdb_aws_dynamo_db_table

AWS EBS Snapshot

x_ca_cmdb_aws_snapshot

AWS EBS Volume

x_ca_cmdb_aws_volume

AWS EC2 Image

x_ca_cmdb_aws_image

AWS EC2 Instance

x_ca_cmdb_aws_instance

AWS EC2 Security Group

x_ca_cmdb_aws_security_group

AWS ELB Load Balancer

x_ca_cmdb_aws_load_balancer

AWS ElastiCache Cluster

x_ca_cmdb_aws_cache_cluster

AWS ElastiCache Node

x_ca_cmdb_aws_cache_node

AWS Lambda Function

x_ca_cmdb_aws_lambda_function

AWS RDS Cluster

x_ca_cmdb_aws_db_cluster

AWS RDS Instance

x_ca_cmdb_aws_db_instance

AWS Redshift Cluster

x_ca_cmdb_aws_redshift_cluster

AWS S3 Bucket

x_ca_cmdb_aws_bucket

Imports for some application tables may be deactivated by the admin in the system table Cloudaware Import Settings (x_ca_cmdb_ci_class_import_settings). To deactivate the import, set the property 'Active' to False. The data for the table(s) with property 'Active' set to False will NOT be imported from Cloudaware.

Data upload status check

To check the data upload status, append /x_ca_cmdb_ci_class_import_settings.do to the current URL in your web browser.

The full URL should be in the format https://YOURINSTANCE.service-now.com/x_ca_cmdb_ci_class_import_settings.do, where 'YOURINSTANCE' is a placeholder for your ServiceNow instance ID.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.