SfSkills Domains Docs GitHub

Home / architect / hybrid-integration-architecture

hybrid-integration-architecture

Use this skill when designing hybrid on-premises-to-Salesforce integration architectures: DMZ relay patterns, reverse proxy configuration, VPN connectivity, and Salesforce Private Connect (AWS PrivateLink) topology.

Open the skill folder on GitHub


Hybrid Integration Architecture

Use this skill when designing the network topology for integrations between on-premises systems and Salesforce — including DMZ relay patterns, reverse proxy configurations, VPN-based connectivity, and Salesforce Private Connect. This skill covers network and connectivity architecture, not authentication mechanisms (see integration-security-architecture for mTLS and OAuth).


Before Starting

Gather this context before working on anything in this domain:


Questions to Ask Before Configuring

Ask these before drawing the topology. Each traces to a gotcha in references/gotchas.md.

QuestionWhy it mattersWhat a good answer addsWhat a proper design adds over just doing it
"Where does the target system run, and can it be fronted by an AWS VPC endpoint service?"Private Connect connections are AwsPrivateLink only (Gotcha 2); no native VPN exists (Gotcha 4)The candidate pattern: Private Connect, DMZ relay, or public endpoint with strong authNo design that depends on a capability the platform lacks
"Who owns provisioning on each side: the Salesforce admin and the AWS account owner?"A deployed connection stays Unprovisioned until Provision runs and the AWS side accepts (Gotcha 2)Named owners and a per-org runbook stepSandboxes and production reach Ready predictably
"Which callouts hit the on-premises target today, and through which named credentials?"Only PrivateEndpoint named credentials use the private path (Gotcha 3); Remote Site Settings open a side door (Gotcha 7)A callout inventory with named credential type per calloutEvery callout takes the private, authenticated path
"How is the caller's identity proven at the relay or endpoint?"IP ranges are shared by every org in a region (Gotcha 1); WS-Security is unsupported (Gotcha 8)Two-way SSL, OAuth, or gateway-injected credentialsIdentity is cryptographic, not inferred from an address
"What latency does the relay add at peak, and is the call synchronous?"Callouts default to 10 seconds and cap at 120 seconds per transaction (Gotcha 6)Measured latency and a sync/async decision per callUsers do not hit timeouts at month end
"Which fields must stay unreadable outside the customer network, and which must stay filterable?"Gateway tokenization breaks filtering (Gotcha 5)A per-field searchable/non-searchable decisionReports and duplicate rules keep working on the fields that need them

What a proper design adds over "just opening a firewall port": the caller is authenticated by certificate or token rather than address, every callout uses the intended path, and private connections are provisioned and checked per org as a runbook step.


Core Concepts

DMZ Relay Pattern for Outbound Callouts from Salesforce

When Salesforce makes outbound callouts to an on-premises system, the on-premises system is often behind a corporate firewall that does not accept inbound connections from the public internet. The DMZ relay pattern uses a relay server in the corporate DMZ to forward requests:

  1. Salesforce callout goes to the DMZ relay host (a server in the corporate demilitarized zone with a public FQDN).
  2. The relay (e.g., reverse proxy products such as IBM WebSeal or CA SiteMinder) authenticates the incoming request and forwards it to the internal on-premises system over the corporate LAN.
  3. The response travels back through the relay to Salesforce.

The DMZ relay is the on-premises side of the architecture. Salesforce has no native VPN client — Salesforce cannot terminate a VPN tunnel. All on-premises connectivity from Salesforce must traverse through an internet-facing relay, a Private Connect endpoint, or an intermediary integration platform (MuleSoft Runtime Fabric) that handles the corporate network boundary.

Salesforce Private Connect provides a private network path between Salesforce (hosted on AWS) and the customer's AWS environment using AWS PrivateLink. This eliminates the public internet from the data path entirely:

Key constraints:

Private Connect is NOT the universal solution — it only applies when the on-premises system connects through AWS and the licensing is available.

On-Premises Encryption Gateways for Data Residency

For organizations with regulated data that cannot leave their network boundaries (e.g., HIPAA-protected health data, financial data under specific sovereignty requirements), on-premises encryption gateways (such as IBM DataPower or CipherCloud; Integration Patterns and Practices also lists Salesforce's own gateway and Computer Associates) can be placed between the corporate network and Salesforce:

  1. Data from Salesforce travels to the encryption gateway in the customer DMZ.
  2. The gateway encrypts or tokenizes sensitive fields before the data reaches internal systems (or vice versa for inbound).
  3. The encryption keys never leave the customer's network — Salesforce stores only tokenized values.

This pattern requires that the Salesforce fields holding sensitive values are designed for tokenized data, and that all reporting and business logic use the tokenized representation or decrypt at the gateway layer.


Common Patterns

Pattern: Reverse Proxy Relay for On-Premises Salesforce Callouts

When to use: Salesforce must call an on-premises API or database that is not accessible on the public internet and Private Connect is not available.

How it works:

  1. Deploy or configure a reverse proxy in the corporate DMZ (e.g., nginx, IBM WebSeal, CA SiteMinder, AWS API Gateway with VPC link).
  2. Assign the relay a public FQDN with a valid TLS certificate.
  3. In Salesforce, configure a Named Credential pointing to the relay's public FQDN, with a client certificate if the relay enforces two-way SSL.
  4. The relay is configured to forward authenticated requests to the internal target over the internal network.
  5. Correction (2026-10-03): earlier text said to add the relay FQDN to Remote Site Settings. The Apex Developer Guide ("Invoking Callouts Using Apex") says a callout whose endpoint is a named credential needs no remote site setting; leaving one in place lets any Apex call the relay without the named credential.

Why not VPN: Salesforce has no native VPN client and cannot terminate IPSec or SSL VPN tunnels. VPN connectivity must be managed by an intermediary (MuleSoft Runtime Fabric deployed in the customer network, or a relay in the DMZ).

Pattern: Private Connect for Regulated On-Premises Data (AWS-Connected)

When to use: Regulated data (HIPAA, financial sovereignty) must never traverse the public internet; customer environment connects to AWS.

How it works:

  1. Customer enables Private Connect via Salesforce support request (requires add-on license; UNVERIFIED 2026-10-03).
  2. Customer creates a VPC Endpoint Service in their AWS VPC pointing to their on-premises systems (via Direct Connect or Site-to-Site VPN to AWS).
  3. An admin creates an OutboundNetworkConnection (connectionType = AwsPrivateLink, properties AwsVpcEndpointServiceName and Region) and runs Provision; the AWS owner accepts the connection request; the status reaches Ready.
  4. A NamedCredential of type PrivateEndpoint references the connection, and every callout to the target uses it.
  5. Integration traffic flows: Salesforce → AWS PrivateLink → customer AWS VPC → customer on-premises (via Direct Connect or VPN).

Decision Guidance

SituationRecommended ApproachReason
On-premises API accessible via public internetNamed Credential + mTLS or OAuthNo special network topology needed
On-premises API behind corporate firewall, no Private ConnectDMZ reverse proxy relayRelay provides public-facing FQDN that Salesforce can call
Regulated data, no public internet pathPrivate Connect (if licensed and AWS-connected)Eliminates public internet from data path
Hyperforce org needing on-premises accessPrivate Connect or mTLS relay — NOT IP allowlisting alonePublished Hyperforce ranges change between versions and are shared by all orgs in a region
On-premises system not on AWSDMZ relay or MuleSoft Runtime Fabric on-premisesPrivate Connect requires AWS connectivity
Data residency encryption requirementOn-premises encryption gateway (DataPower/CipherCloud)Keys stay on-premises; Salesforce stores tokenized values

Step-by-step instructions for an AI agent or practitioner working on this task:

  1. Determine org type — Hyperforce or non-Hyperforce? On Hyperforce, any allowlist must be automated from the published ip-ranges.json feed and paired with mTLS or OAuth; plan for mTLS or Private Connect from the start.
  2. Classify the connectivity requirement — Outbound from Salesforce to on-premises, inbound from on-premises to Salesforce, or bidirectional. Each direction may use a different pattern.
  3. Assess Private Connect eligibility — Is the customer environment on AWS? Is Private Connect licensed? If both yes, Private Connect is the strongest option for regulated scenarios.
  4. Design DMZ relay if Private Connect is not available — Identify the relay host location, TLS certificate requirements, and authentication mechanism at the relay layer.
  5. Evaluate data residency requirements — If regulated data must never be visible in plaintext outside the customer network, design an encryption gateway layer at the DMZ boundary.
  6. Document the network topology — Produce a diagram showing: Salesforce → relay/Private Connect endpoint → on-premises target. Include all network boundaries (DMZ, internal LAN, internet).
  7. Validate against Hyperforce constraints — Confirm that no design depends on IP allowlisting alone, that every callout uses the intended named credential type, and that each org's private connection is Ready.

Review Checklist

Run through these before marking work in this area complete:


Salesforce-Specific Gotchas

  1. Salesforce has no native VPN client — A common design error is planning a VPN tunnel from Salesforce to the corporate network. Salesforce cannot terminate IPSec or SSL VPN tunnels. All corporate-network connectivity requires an intermediary relay or Private Connect.
  2. Private Connect requires support-assisted opt-in and separate licensing — Private Connect cannot be self-service enabled. Teams that design for Private Connect without confirming the license and support enablement process will be blocked at implementation.
  3. Hyperforce IP ranges change and are shared — Salesforce publishes per-region prefixes in ip-ranges.json, versioned by syncToken (corrected 2026-10-03 from "ephemeral"). Allowlisting must be automated from the feed and cannot prove which org is calling. mTLS or OAuth carries the identity check.
  4. DMZ relay security configuration is outside Salesforce's control — The relay is a customer-managed component. If the relay has weak TLS configuration or insufficient authentication, the Salesforce-side security is undermined regardless of Salesforce's own security posture.

Output Artifacts

ArtifactDescription
Network topology diagramDiagram showing Salesforce, relay/Private Connect, and on-premises system boundaries
Connectivity pattern decisionDocuments which pattern was selected and why
Private Connect prerequisites checklistLicense, AWS setup, and support request steps
Data residency architecture noteDocuments encryption gateway placement and key management approach

Package files