snowflakedb / snowflakedb/snowflake-connector-python

SNOW-996175: Support for RFC1123 compliant Snowflake tenancy FQDN

Open
#1,839 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement status-pr_pending_merge status-triage_done
Dominant language
Python
Stars
730
Forks
574
Avg merge
5h 45m
Merged PRs (30d)
16

Description

What is the current behavior?

The FQDN to access Snowflake public endpoint seem to derived from the Snowflake account name and when the account name contains underscores _, that gets carried forward to the FQDN. This violates RFC1123 apparently. While Snowflake support says, _ is interchangeable with -, this is being not supported by Snowflake connector. Hence we are forced to stay with the non-compliant URLs which are incompatible with the Next Generation Firewalls, which invalidates such URLs, which opens security gaps.

What is the desired behavior?

Snowflake connector should accomodate FQDNs with - some how.

How would this improve snowflake-connector-python?

Having an RFC compliance improves Customer Experience.

References and other background

https://www.digicert.com/kb/ssl-support/underscores-not-allowed-in-fqdns.htm

What is your Snowflake account identifier, if any?

quantium_dg_cip_dev, quantium_dg_cip_prd

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read src/snowflake/connector/util_text.py at the linked lines 236-246 first, then trace how tenancy FQDNs are formed or validated. Reproduce the behavior with the supplied account identifiers and define completion as accepting RFC1123-compliant hyphenated endpoints without weakening URL validation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
databases, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.