How it works
End users still reach Elementum over the public internet, but data traffic between Elementum and your Snowflake account is routed through an Amazon PrivateLink endpoint inside AWS. Elementum supports PrivateLink to customer Snowflake accounts in any AWS region with PrivateLink support.When to use PrivateLink
PrivateLink is a good fit when:- Your Elementum organization is hosted on AWS.
- Your Snowflake account is on AWS in a region with PrivateLink support and is on the Business Critical Snowflake edition (or higher).
- Your security or compliance program requires data traffic to bypass the public internet.
- You want to block all public access to Snowflake and only allow connections from your corporate network and Elementum.
Prerequisites
Elementum on AWS
Confirm with your Elementum representative that your organization is deployed on AWS. PrivateLink is not available for Elementum organizations on other clouds.
Snowflake edition and region
Your Snowflake account must be on AWS, in a region with PrivateLink support, and on the Business Critical edition or higher. PrivateLink is not available on Standard or Enterprise editions.
Snowflake ACCOUNTADMIN access
You need a user with the
ACCOUNTADMIN role to authorize PrivateLink and retrieve the configuration.Snowflake CloudLink in place
PrivateLink replaces the IP whitelist on an existing or planned Snowflake CloudLink connection. The rest of the CloudLink setup — service user, role, warehouse, and key-pair authentication — is still required.
Setup workflow
The customer-side setup happens in your Snowflake account. Elementum handles the consumer-side AWS VPC endpoint, DNS, and CloudLink hostname configuration.Provisioning the Elementum-side VPC endpoint is handled by Elementum support. The steps below are the Snowflake actions you complete in your own account so Elementum can finish wiring up the connection.
Contact Elementum to initiate PrivateLink
Open a request with your Elementum representative or Elementum support. They will provide the AWS account identifier you authorize on your Snowflake account in the next step. Compare your Snowflake account’s AWS region against Elementum’s hosting regions and call out the mismatch in your request if your Snowflake account is in a different region, so the team can configure cross-region endpoint settings.
Generate an AWS federation token
SYSTEM$AUTHORIZE_PRIVATELINK requires a federated token from your AWS account. Generate one with the AWS CLI:Authorize Elementum's AWS account on your Snowflake account
Using the Replace ELEMENTUM_AWS_ACCOUNT_ID with the 12-digit AWS account ID Elementum provided, and FEDERATED_TOKEN_JSON with the full JSON output from
ACCOUNTADMIN role, call SYSTEM$AUTHORIZE_PRIVATELINK with the AWS account ID Elementum gave you and the federated token from the previous step:aws sts get-federation-token.Verify the authorization
Confirm the authorization succeeded by calling A successful response returns
SYSTEM$GET_PRIVATELINK with the same arguments:Account is authorized for PrivateLink.Retrieve the PrivateLink configuration for Elementum
Get your account’s PrivateLink endpoint details by calling Share the JSON output with your Elementum contact. Elementum primarily needs:
SYSTEM$GET_PRIVATELINK_CONFIG:privatelink-account-url— the private hostname for your Snowflake accountprivatelink-vpce-id— the VPC endpoint service identifierprivatelink-ocsp-url— the OCSP cache server hostname
Confirm connectivity from Elementum
After Elementum confirms the endpoint is provisioned, open Settings > CloudLinks in Elementum, edit the Snowflake connection (or create a new one following the Connecting Snowflake to Elementum guide), and click Test Connection. A successful test confirms traffic is flowing over PrivateLink.
Block public access to Snowflake
After PrivateLink is verified, you can tighten security further by restricting your Snowflake account to PrivateLink and your corporate network only. Add a Snowflake network policy that allows only your corporate CIDR ranges and activate it for the account.Once PrivateLink is in place for Elementum, the Elementum public IP allow list (
44.210.166.136, 44.209.114.114, etc.) is no longer required for Elementum traffic. You can safely remove those IPs from your Snowflake network policy after confirming the PrivateLink connection is healthy.Cross-region considerations
Elementum hosts its production AWS environments in two regions:| Elementum environment | AWS region | Region name |
|---|---|---|
| PROD | us-east-1 | US East (N. Virginia) |
| PROD-EU | eu-central-1 | EU Central (Frankfurt) |
Troubleshooting
Authorization fails or token expired
Authorization fails or token expired
Connection still routes over the public internet
Connection still routes over the public internet
Verify Elementum has finished provisioning the VPC endpoint on its side and that the CloudLink Account URL has been updated to the
privatelink hostname returned by SYSTEM$GET_PRIVATELINK_CONFIG (it should contain .privatelink.snowflakecomputing.com). If the CloudLink still points at the public account URL, traffic continues to use the public route. You can also call SYSTEM$ALLOWLIST_PRIVATELINK in your Snowflake account to list the hostnames that should be reachable over the private endpoint.How do I disable PrivateLink later?
How do I disable PrivateLink later?
Generate a fresh federated token and call
SYSTEM$REVOKE_PRIVATELINK with the same aws_id and federated_token arguments you used to authorize. Notify Elementum so the consumer-side endpoint can be removed and the CloudLink hostname can be reverted. Re-add the Elementum public IP allow list before revoking if you want to fall back to public-internet CloudLink connectivity.Additional resources
Snowflake: AWS PrivateLink
Snowflake’s reference documentation for AWS PrivateLink, including all supported system functions and limitations.
AWS: What is AWS PrivateLink?
AWS overview of PrivateLink concepts, security model, and VPC endpoint architecture.
Connecting Snowflake to Elementum
Complete CloudLink setup for Snowflake — service user, role, warehouse, and key-pair authentication.
CloudLink overview
How CloudLink connections work across Snowflake, BigQuery, Databricks, and REST APIs.