CData Connect AI, enables you to access PostgreSQL data from cloud-based applications like the Salesforce console and mobile applications like the Salesforce Mobile App. In this article, you will use CData Connect AI and Salesforce Connect to access external PostgreSQL objects alongside standard Salesforce objects.
Connect to PostgreSQL from Salesforce
To work with live PostgreSQL data in Salesforce Connect, we need to connect to PostgreSQL from Connect AI, provide user access to the connection, and create a Workspace for the PostgreSQL data.
Connect to PostgreSQL from Connect AI
CData Connect AI uses a straightforward, point-and-click interface to connect to data sources.
-
Log into Connect AI, click Sources, and then click Add Connection
π Adding a Connection
- Select "PostgreSQL" from the Add Connection panel
π Selecting a data source
-
Enter the necessary authentication properties to connect to PostgreSQL.
To connect to PostgreSQL, set the Server, Port (the default port is 5432), and Database connection properties and set the User and Password you wish to use to authenticate to the server. If the Database property is not specified, the data provider connects to the user's default database.
SSH Connectivity for PostgreSQL
You can use SSH (Secure Shell) to authenticate with PostgreSQL, whether the instance is hosted on-premises or in supported cloud environments. SSH authentication ensures that access is encrypted (as compared to direct network connections).
SSH Connections to PostgreSQL in Password Auth Mode
To connect to PostgreSQL via SSH in Password Auth mode, set the following connection properties:
- User: PostgreSQL User name
- Password: PostgreSQL Password
- Database: PostgreSQL database name
- Server: PostgreSQL Server name
- Port: PostgreSQL port number like 3306
- UserSSH: "true"
- SSHAuthMode: "Password"
- SSHPort: SSH Port number
- SSHServer: SSH Server name
- SSHUser: SSH User name
- SSHPassword: SSH Password
SSH Connections to PostgreSQL in Public Key Auth Mode
To connect to PostgreSQL via SSH in Password Auth mode, set the following connection properties:
- User: PostgreSQL User name
- Password: PostgreSQL Password
- Database: PostgreSQL database name
- Server: PostgreSQL Server name
- Port: PostgreSQL port number like 3306
- UserSSH: "true"
- SSHAuthMode: "Public_Key"
- SSHPort: SSH Port number
- SSHServer: SSH Server name
- SSHUser: SSH User name
- SSHClientCret: the path for the public key certificate file
π Configuring a connection (Salesforce is shown)
-
Click Save & Test
-
Navigate to the Permissions tab in the Add PostgreSQL Connection page and update the User-based permissions.
π Updating permissions
Add a Personal Access Token
When connecting to Connect AI through the REST API, the OData API, or the Virtual SQL Server, a Personal Access Token (PAT) is used to authenticate the connection to Connect AI. It is best practice to create a separate PAT for each service to maintain granularity of access.
-
Click on the Gear icon () at the top right of the Connect AI app to open the settings page.
-
On the Settings page, go to the Access Tokens section and click Create PAT.
-
Give the PAT a name and click Create.
π Creating a new PAT
-
The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.
Configure PostgreSQL Endpoints for Salesforce Connect
After connecting to PostgreSQL, create a workspace for your desired table(s).
-
Navigate to the Workspaces page and click Add to create a new Workspace (or select an existing workspace).
π The Workspaces page.
π Adding a new Workspace.
-
Click Add to add new assets to the Workspace.
-
Select the PostgreSQL connection (e.g. PostgreSQL1) and click Next.
π Selecting an Asset (Salesforce is shown).
-
Select the table(s) you wish to work with and click Confirm.
π Selecting Tables (Salesforce is shown).
-
Make note of the OData Service URL for your workspace, e.g. https://cloud.cdata.com/api/odata/{workspace_name}
With the connection, PAT, and Workspace configured, you are ready to connect to PostgreSQL data from Salesforce Connect.
Connect to PostgreSQL Data as an External Data Sources
Follow the steps below to connect to the feed produced by Connect AI.
- Log into Salesforce and click Setup -> Integrations -> External Data Sources.
- Click Now External Data Sources.
- Enter values for the following properties:
- External Data Sources: Enter a label to be used in list views and reports.
- Name: Enter a unique identifier.
- Type: Select the option "Salesforce Connect: OData 4.0".
- URL: Enter the URL to the OData endpoint of Connect AI: https://cloud.cdata.com/api/odata/{workspace_name}
- Select the Writable External Objects option.
- Select JSON in the Format menu.
- In the Authentication section, set the following properties:
- Identity Type: If all members of your organization will use the same credentials to access Connect AI, select "Named Principal".
If the members of your organization will connect with their own credentials, select "Per User".
- Authentication Protocol: Select Password Authentication to use basic authentication.
- Certificate: Enter or browse to the certificate to be used to encrypt and authenticate communications from Salesforce to your server.
- Username: Enter a CData Connect AI username (e.g. [email protected]).
- Password: Enter the user's PAT.
π Configuration settings for the data source (NetSuite is shown)
Synchronize PostgreSQL Objects
After you have created the external data source, follow the steps below to create PostgreSQL external objects that reflect any changes in the data source. You will synchronize the definitions for the PostgreSQL external objects with the definitions for PostgreSQL tables.
- Click the link for the external data source you created.
- Click Validate and Scan.
- Select the PostgreSQL tables you want to work with as external objects.
π Select external objects (NetSuite is shown)
Access PostgreSQL Data as Salesforce Objects
After adding PostgreSQL data as an external data source and syncing PostgreSQL tables as external objects, you can use the external PostgreSQL objects just as you would standard Salesforce objects.
Simplified Access to PostgreSQL Data from Cloud Applications
At this point, you have a direct, cloud-to-cloud connection to live PostgreSQL data from Salesforce. For more information on gaining simplified access to data from more than 100 SaaS, Big Data, and NoSQL sources in cloud applications like Salesforce, refer to our Connect AI page.