Configuring Private Link for Azure Database for Postgres Flexible Server
The private connection feature is available on the following dbt Enterprise tiers:
- Business Critical
- Virtual Private
To learn more about these tiers, contact us at sales@getdbt.com.
The following steps walk you through the setup of a Private Link endpoint for Azure Database for Postgres Flexible Server in a dbt multi-tenant environment.
Private connection endpoints can't connect across cloud providers. For a private connection to work, both dbt and the server (like Azure Database) must be hosted on the same cloud provider. For example, dbt hosted on AWS cannot connect via PrivateLink to services hosted on Azure, and dbt hosted on Azure can’t connect via Private Link to services hosted on AWS.
Configure Azure Private Link
From your Azure portal:
- Navigate to your Azure Database for Postgres Flexible Server.
- From the server overview, click JSON view.
- Copy the value in the Resource ID field at the top of the pane.
The path format is:/subscriptions/<subscription_uuid>/resourceGroups/<resource_group_name>/providers/Microsoft.DBforPostgreSQL/flexibleServers/<server_name>
. - Add the required information to the following template and submit your Azure Private Link request to dbt Support:
Subject: New Azure Multi-Tenant Private Link Request
- Type: Azure Database for Postgres Flexible Server
- Postgres Flexible Server name:
- Azure Database for Postgres Flexible Server resource ID:
- dbt Azure multi-tenant environment (EMEA):
- Azure Postgres server region (e.g., WestEurope, NorthEurope): - Once our support team confirms the endpoint has been created, navigate to the Azure Database for Postgres Flexible Server in the Azure Portal and browse to Settings > Networking. In the Private Endpoints section, highlight the
dbt
named option and select Approve. Confirm with Support that the connection has been approved so they can validate the connection and make it available for use in dbt.
Create connection in dbt
Once you've completed the setup in the Azure environment, you will be able to configure a private endpoint in dbt:
- Navigate to Settings → Create new project → select Postgres.
- You will see two radio buttons: Default Endpoint and PrivateLink Endpoint. Select PrivateLink Endpoint.
- Select the private endpoint from the dropdown (this will automatically populate the hostname/account field).
- Configure the remaining data platform details.
- Test your connection and save it.