Integrating external data with Salesforce applications has never been easier thanks to the Salesforce Connect that can help you consume data from any OData producer. External data objects can be configured in minutes. But the picture isn't complete without the real-time connectivity provided by our Hybrid Connectivity Service - DataDirect Hybrid Data Pipeline.
In this tutorial, we show SQL Server as the data source, but any of the data sources available in Hybrid Data Pipeline can be OData-enabled for use with Salesforce Connect. This includes sources such as Google BigQuery, PostgreSQL, Oracle or even REST sources such as Jira, BigCommerce and internal REST APIs.
In this article we will walk you through on how you can access On-premises data securely via OAuth2 using OData generated by Hybrid Data Pipeline. You can also use basic authentication to connect to Hybrid Data Pipeline for a simpler deployment.
For AWS
For Azure
Enabling On-Premise Connectivity (if applicable)
If your database is behind a corporate firewall or in a private network, you can use our On-Premises connector which will enable a secure connection to your database for Hybrid Data Pipeline Server, without having to open any ports in your firewall. To get started, you would need to install this On-Premises Connector on your on-premises infrastructure as the name suggests. Follow the tutorial below on how to install the On-Premises Connector.
If Hybrid Data Pipeline Server is on AWS
If Hybrid Data Pipeline Server is on Azure
Note: If you are connecting to an On-Premises data source, select the appropriate Connector ID in the drop down. For directly accessible sources, this can be left blank.
There are two methods to authenticate to the Hybrid Data Pipeline from Salesforce. The first is using your Hybrid Data Pipeline username and password by specifying a named principal account in Salesforce. The second is using OAuth 2.0. Both methods are listed below:
No further configuration is required in Hybrid Data Pipeline. Proceed to the Salesforce External Data configuration, select Named Principal as the Identity Type, Password Authentication as the Authentication Protocol, as well as Username and Password for your Hybrid Data Pipeline user.
POST https:
//<server>/api/mgmt/oauth/client/applications
Body
{
"name"
:
"SalesforceAuth"
,
"description"
:
"Salesforce Lightning Connect via OData"
,
"redirectUrls"
:[
"dummy.callback.url"
]
}
Authentication Basic
Note: The Redirect URL’s can be a dummy entry. It does not need to be valid at this stage. This will be updated later with valid Callback URL that will be provided by Salesforce.
{
"id"
: 1,
"name"
:
"SalesforceAuth"
,
"description"
:
"Salesforce Lightning Connect via OData"
,
"redirectUrls"
: [
"dummy.callback.url"
],
"clientId"
:
"xxxxx"
,
"clientSecret"
:
"xxxxxx"
}
PUT http:
//<Server>/api/mgmt/oauth/client/applications/<id>
Body
{
"name"
:
"SalesforceAuth"
,
"description"
:
"Salesforce Lightning Connect via OData"
,
}
Authentication Basic
Note: Copy the Callback URL provided by Salesforce to the redirect Urls array in the above body. The
If you don’t remember the <id> for the application, send a GET request to http://<server>/api/mgmt/oauth/client/applications to list all applications that are registered for OAuth2.0 with Hybrid Data Pipeline.
We hope this tutorial helped you to access your On-premises data securely using OData generated by Progress Hybrid Data Pipeline from Salesforce. Remember, you can use Hybrid Data Pipeline in a similar fashion to connect to Oracle, Postgres, MySQL, DB2 etc. If you have any questions or issues, feel free to contact us.