snowflakedb / snowflake-connector-python

Snowflake Connector for Python
https://pypi.python.org/pypi/snowflake-connector-python/
Apache License 2.0
568 stars 458 forks source link

SNOW-1319756: Cannot connect to Snowflake using externalbrowser in a Docker container when running as a script #1917

Closed rschack-cedar closed 2 months ago

rschack-cedar commented 3 months ago

Python version

Python 3.11.6 (main, Nov 29 2023, 04:07:34) [GCC 10.2.1 20210110]

Operating system and processor architecture

Linux-6.6.12-linuxkit-aarch64-with-glibc2.31

Installed packages

agate==1.7.1
annotated-types==0.6.0
appdirs==1.4.4
asn1crypto==1.5.1
attrs==23.2.0
Babel==2.14.0
certifi==2024.2.2
cffi==1.16.0
chardet==5.2.0
charset-normalizer==3.3.2
click==8.1.7
colorama==0.4.6
cryptography==42.0.5
daff==1.3.46
dbt-adapters==1.0.0
dbt-common==1.0.0
dbt-core==1.8.0b1
dbt-extractor==0.5.1
dbt-semantic-interfaces==0.5.1
dbt-snowflake==1.8.0b1
diff_cover==8.0.3
filelock==3.13.3
idna==3.6
importlib-metadata==6.11.0
iniconfig==2.0.0
isodate==0.6.1
jaraco.classes==3.4.0
jeepney==0.8.0
Jinja2==3.1.3
jinja2-simple-tags==0.6.1
jsonschema==4.21.1
jsonschema-specifications==2023.12.1
keyring==24.3.1
leather==0.4.0
Logbook==1.5.3
markdown-it-py==3.0.0
MarkupSafe==2.1.5
mashumaro==3.12
mdurl==0.1.2
minimal-snowplow-tracker==0.0.2
more-itertools==10.2.0
msgpack==1.0.8
networkx==3.2.1
packaging==24.0
parsedatetime==2.6
pathspec==0.11.2
platformdirs==4.2.0
pluggy==1.4.0
protobuf==4.25.3
pycparser==2.22
pydantic==2.6.4
pydantic_core==2.16.3
Pygments==2.17.2
PyJWT==2.8.0
pyOpenSSL==24.1.0
pytest==8.1.1
python-dateutil==2.9.0.post0
python-slugify==8.0.4
pytimeparse==1.1.8
pytz==2024.1
PyYAML==6.0.1
referencing==0.34.0
regex==2023.12.25
requests==2.31.0
rich==13.7.1
rpds-py==0.18.0
ruamel.yaml==0.18.6
ruamel.yaml.clib==0.2.8
SecretStorage==3.3.3
six==1.16.0
snowflake-connector-python==3.8.0
sortedcontainers==2.4.0
sqlfluff==3.0.3
sqlfluff-templater-dbt==3.0.3
sqlparse==0.4.4
tblib==3.0.0
text-unidecode==1.3
tomlkit==0.12.4
tqdm==4.66.2
typing_extensions==4.10.0
urllib3==2.2.1
zipp==3.18.1

What did you do?

While in a docker container, I'm unable to connect to Snowflake using externalbrowser (script below). Oddly, however, if I run the script interactively in a python shell, I can authenticate and connect to Snowflake without any issue. It's worth mentioning that we use a Cyral sidecar with Snowflake

import os

import snowflake.connector

c = snowflake.connector.connect(
    account=f"{{os.getenv('SF_ACCOUNT_ID')}}.us-east-1.privatelink",
    host="snowflake.cedarinternal.com",
    port=443,
    authenticator="externalbrowser",
    user=os.getenv("USER"),
    database="cedar",
    schema="sandbox",
    warehouse="compute_wh",
    role="cedar_read_only",
)

cur = c.cursor()
cur.execute("select 1 as id")
for col1 in cur:
    print(col1)

The Dockerfile and docker-compose.yml files:

FROM public.ecr.aws/docker/library/python:3.11.6-slim-bullseye as base

RUN apt-get update \
    && apt-get -y upgrade \
    && apt-get install -y --no-install-recommends \
    g++ \
    gcc \
    git \
    libpq-dev \
    python-dev \
    python3-pip

WORKDIR /usr/src/dbt

COPY requirements.txt ./requirements.txt

RUN python -m pip install -U certifi cffi pip setuptools --no-cache-dir \
    && python -m pip install -r ./requirements.txt

SHELL ["/bin/bash", "-o", "pipefail", "-c"]
version: '3.6'
services:
  dbt:
    build: .
    environment:
      - USER=${USER}
      - SF_ACCOUNT_ID=${SF_ACCOUNT_ID}
      - SF_AUTH_SOCKET_PORT=3037
      - SNOWFLAKE_AUTH_SOCKET_REUSE_PORT=true
    volumes:
      - ./:/usr/src/dbt
    ports:
      - "3037:3037"

What did you expect to see?

When running in a script, the authentication fails with the following error: snowflake.connector.errors.OperationalError: 250001: 250001: Could not connect to Snowflake backend after 2 attempt(s).Aborting. When running the same program in an interactive python shell, it succeeds (output from interactive session below):

>>> import os
>>> import snowflake.connector
>>> c = snowflake.connector.connect(
...     account=f"{{os.getenv('SF_ACCOUNT_ID')}}.us-east-1.privatelink",
...     host="snowflake.cedarinternal.com",
...     port=443,
...     authenticator="externalbrowser",
...     user=os.getenv("USER"),
...     database="cedar",
...     schema="sandbox",
...     warehouse="compute_wh",
...     role="cedar_read_only",
... )
Initiating login request with your identity provider. A browser window should have opened for you to complete the login. If you can't see it, check existing browser windows, or your OS settings. Press CTRL+C to abort and try again...
Going to open: https://privatelink.snowflake.cedarinternal.com/session/v1/CyralSSOLogin?SAMLRequest=jVLRbtowFH3vV0TeM7EDaBSLUGUwOjYKGYFK25uXXKiLY2e2k5R9%2FZzQSJWmor3a59xzzj13cveSC68CbbiSIQp8gjyQqcq4PIZov1v0bpFnLJMZE0pCiM5g0N30ZmJYLgoalfZJbuF3CcZ6bpI0tPkIUaklVcxwQyXLwVCb0iR6WNG%2BTygzBrR1euiVkhnuxJ6sLSjGdV379cBX%2Boj7hBBMxtihGsgH9EaiuK5RaGVVqkRHeXGh3pEIMBk2Eg7hFOJX4icuLzu4pvLrAjL0y24X9%2BJNskNe1KWbKWnKHHQCuuIp7LeriwHjHBip6oNgJ%2FBTyJjm0oKWTPipyvEBMizUkbv1LOchKk48e%2Fj2sapG48dnWFfxuZqvB%2FffP%2F%2F4c3ze7%2BttPFoEX%2B%2BzaEw2R0tS5D12bfabNpfGlLCUTYfWPZH%2BsEeGvYDsggENRnQw9ke35Cfy5q5CLpltmZ3PQvOKWRBcnvxrng2YRhJXAZ6dNRNJslm1EaY3ntfeCm196Ol%2FbGCC3xK6AQVdu%2F0v57ESPD17C6VzZt%2BvJ%2FCD9oVnvUMLpZAzLqIs086rq0kIVc80uHQhsroEhN1V43%2FPevoX&RelayState=3037 to authenticate...
We were unable to open a browser window for you, please open the url above manually then paste the URL you are redirected to into the terminal.
Enter the URL the SSO URL redirected you to: http://localhost:3037/?token=7V1Zc9u6kn73r3A5VffF5Yj7NrHvUCJFbZRI7dKLiiJBiuIq7tKvH1CyvMXJyTnn3qmLmVSlHBMEwK8bjcbXDZD%2B9s8q8G8LkKRuFD7e4V%2Bxu1sQmpHlhs7j3WzafuDu%2Fvn0LTUCn4iFMUjjKEzBrQTSzA2N7Nxol2VxKjQaceIWRgZ8N%2FS%2BpmFU2r7hga8msIzEDTOQhIb%2F1YyChg2shh85bnh325Ue71wLJ2mSJ1iGIjmaY3GGwHAWY1mGI2GN8PrQafR4F3uupfaZomD5%2BR4MC%2B1YSENS0eXVydnPZuVYY9t4T7FEHhs5GWbC9mmag26YZkaYPd4RGEE9YNQDjk1xUsBZgSK%2B0gy1vrudX1VA1CqASglT4SL1412ehEJkpG4qhEYAUiEzhYmoDgRYVYiTKIvMyL%2B2qdKLQqA%2ByrL8WpJfo8RpEBiGN5bqYGLuQGDcPStUOINLbttREhjZz59Tl7jWg32uKoAwc7PjO5w%2Fb26kKUjq4bp7eoMu8jLjPCSg8lhsx9qUzJr9tZFH1I751ngL8umblQoT14GDnifg%2BcHWj4TFGhjfgHWs1HW%2B3L20BVY3tKPzZcsIo9A1Dd89nc1IBdkusm5F34kSN9sFP9QijtUdP4DKfDBxKvxy13gP7Zc7wqgrwocgSsCXJDUe0p1B0Mxzl2NggwROBnA7G3cf77781FDPLaaJEab1EKXvL%2F8QzTt9gbAAfhQD6yG9CvWM6Nc7%2FERPT9%2BAKXRD089TtwDD2kRiwwTprZYA260GbgpNsEqvRgXMPzUEjbfwPlxetCG5DvQaf3J4oPq%2FvBuUSy9zw8%2FBk%2BXqff0EKHuua2O5HIN7Um8uNGvAcV62b0267GhJ5Ml%2BLnOPZ0RvG58LXob4cvnBRl9s6tJiLImtTm%2FN8fms0ZFdMz5xyx65Ilv7FD%2FO%2BmqncLvTsSez5bLpDOgmobby5b0fDaNO0XQmcbRlTz4RkY1OUbhluyLINbOY2y43G8T2uvJMPjqdqBbnKdp03KAYvTAU8ZCbuNaajRk61DvTZKlPjDkTHcY9pbWfYCXRwO%2FbcWdxP8mb3aqLg%2B58W%2FQTdR%2F7mLfohUUyVQpFmef7YsouDDsy89JKNbpnG9KhSmZ%2BUIz7lbRkenyIK3m06MVOexFza%2F50CgPN2olDR3eoTtydnhrDkdQf5gWD59ZeKkaRxmRMz1%2BH9054XC36%2FcYqVsSxPKyi0dDOyvGa4k%2BdYLxdnfpsrzfVG3OwnGbMYbn1Y%2BXYs7qdI6c%2FPr6o%2Fo2ua%2FX3wfFlKJY0xktGZrxctGp3ZkMHkoEntduVgn2rJUZ9Ryy7TdHpKuJSzg5RtldFTGlNDsqkuyUlXW62ypmodpWhqqdlS19Jc11X5LI3n53kqdqUlRsRn8ktsezrRDs1FuvCDOh4NZUXalNX6nvNshzOiHbelddQaHpvLIf77UkeqmJ6vt9ySnlKZBhsM7tRm91LYVkOZvhQm3V6hRX43nrZraS9qDad4bwpqmpzMfTXSvuojstScVa9frTu7gpzKOpes%2B3g8TZYFze6wieWIucrgs%2FUJrWUpt1SldSTKnWPw6lZqngEy9Q3ZU5dVjorrGqdxN7lYaup6M%2BnN%2BpYLeWL%2FF1JjKXVoorXAX%2FcBv5OHa%2FKtni%2B15FEfLpaUM447O22wTA2iWGh6ljZKs%2F3%2B5I41m4Mcgwb6aXsnAsHkphNZxivmwFPGIuxb%2B7lkSqWZ1WIZdleEXNvBVUAezeajnfYea7Cl1izpcuLG2nh5xCJuK2VOKH3WwIrHUd2P46kqM9Ekeo2pVKs7%2FfFCI68LiVJKQazE%2FQLacO%2B2bvzVM2MzrqkW74ixiHPOYV%2FKs1eeJjIQWH2o%2FnqyIfajgKzIlC6xKFDtnR6NKZVTdqxxviQj3piR1Ts%2BU0rypvSgd5pJe%2FNdwOzZVmwVsPMCcMInPu977hKk6P2h86p7I%2BUe3s4PGjper7DK%2F5keslgqehqr1%2BZ1nZx05l7VaKOBnzaqCYMPxlIh9H9tCe7bUkdaDtzP8rCBumvtv6y6vsV5kWy2khWlnPqOa1pYnZHbbopFoep217fZL6jgVTrW%2Fk4d%2FyVZxSnkWKnFVGJdm%2FldA%2BrwBgTLVM3vQHPsZg4bjb6StFuubnZOZJl0aAnI9BtTPQ%2BuFFYXWkky7VZ2bncGKmODy1khq9FR22KolxK%2BlsDlQdNXZTgAEA79t1laY86cmMYSLq28DNwE1Wn9XB%2Fb%2BPs%2FaQdtL3dumosmKxLdLRdfmTxVBmTAee3FlqiWEvZYnlSPE3LQbJfY8d5128RFldRVLTiyuCmz%2B456ahncxs7eJ6nVxWvDkbQtcbQmdrmmq1k37lva9vsfuJCxgM4HIA9fojITmq1Vh6mDdj23mamdknfFMvJwg66mWenu9mSirZYNDueBqoa8sBJR1uLcLbarCx6WqFp9039tKCspthbqCKz61EM8ODkGgFpOtHc%2BU1HtVP%2FxPaWoesl%2B6rX2mmmCI5Ne8FbNKOse7w2m4z3h7TFaFp8Cua5HLjbMbGTTvKsrapinFaLZXue27P2zRxz94tKWQK5P6vIUWfiYRcn%2BdHxvRReXGPjrdN851RfGPwkg9fpX%2BG3H7poRRa4Pfvqn7dPz7WFSW5CqpGemcK7fq5UWLwS1I8xAYXxHEbiOMHzPEvgPP8v4PS%2FypV%2Fc%2Fr%2FR5z%2Be0P7zen%2F9zl9KgPs2FlOuaLbYTp6xKbKMT75E2k4b%2Bz5Rls5LSnHOR44ufuv4PTR1jImdkngI56iG7Nt4huTQV%2FeEvvFdHifzrdjxTyqvNUJ%2FJ6Bl5N47RPaUGKHVb6PlGQ0AwRkcgHH7rIWs5sGwxWl6r3UmPbo4TwmTmTP3g1F59DeHg785HDEllQRxZwZc4ssn44lcxaF84ZKdJZ0e3k%2FXQeTauGR5XRZqcpp1Ri4o3WPpcSJ24xWURR3QxbSO21E3rMj3eqpQ88Y3rcG276tHpOGftQxpyW1knu5YHGzTQczvSBt15%2F4ZdA%2BNHlKbe9Me7RTcoupQo69jzBtJuFlufXGspbpxymWSJ3pgTO2ZGlbA6fZsRnC3VlhcALDUsHUuNfYkbvF2OklWHNe6K3ZMdiC3pgYN31u2xuSp36DEX9z%2Bt%2Bc%2Fjen%2F83pf3P6fz%2Bnh9R6uwdm9pd443MXNXHoSn%2FIWfGv%2BAfOmodpDEwIHVh3T0lq7gzTu3LMS6cfULai0HbrpjXTv%2FCGn4M1A2ELjAQkdz%2FpqVbV394pGEbZKBwlop2B5GNUQRCXqIKGUcUYChy7oA49%2FvrOx0sc9Jk4H%2B9dJYd1LLeukNZgmwAOAvgu%2FnmD9Fcl%2BhuWI%2BaWW3MtqPoscc0L%2Bve3nq5a%2BolmrgK%2FtPlY8K7%2Fxkd1vD4y24V1XAkCOD6358tP40QoPCuQ%2BFeSJqD8ExiZwm66oQWqv2I5f0t%2FECIUJANV9llZy4dtIKN9%2Bmm3pmDW9WCxBv8ro8TSYNgOLQdYZ8IeR0n2qtFPev%2Fs5vvCF62%2BoMzggGzzDLzq%2B%2B%2Fo4drbbe02Hu9gRO36d%2BeLX4mkDdi8Lr36pS2sZ37f%2BZmH%2Fpmg%2FqWu%2B8eVH9yzpZkAtkpdITvGoI69hNpwQ%2BfFPf732fjfGf07eE%2FfFf9IRwGA1DsZ2f%2B31ASN2XCTzNj6QEii%2BgcwrE0U%2Bscf6es%2FDL3npi4iUM%2FJAt%2B16%2BQTXJUAqO8ggT2OBSfN3QwIezcxHtLIzkrIEh5y6FhSJCQwBcfNdvlWsCB52aCmf3OzMcp0s6EICqdxmmcokt1sxnCqjpCZqc8i4DjJYiRNswSNISoCy2M8S3MEQxLMZqP5RnZO0SEhw%2BtMjp9xP5iQ1yKB%2Fap%2FnidIjmAJlqHhLBCtADZESgCGIFiOwDGMY1Cbxq%2F2Y8IQCiKBddFZBmCLF7sX0LF74RRFwYU%2BogH404l6VfzmkLuml7rOLtskEVICYXDtJXE4e3ECMc9zJm6C4fuIwI0NByRWnh2vUUmda7JAggL8c37sH0YQ%2F9dtE4agILRuZbQIp2p4iHh0uQDJMQpRceR%2BFHloGHEdMSUAhLsIru5oAH520iTF0pBZERRJEJvNdeYhYc1vQwwKx3kOp3ACLYaIcILgwmutxC2AAF1KBowfJg3%2Fw6BbkZnXJ10ui2UKUFkp66SYD5dIwY0e4iSycjN7CJBZeyB6PH7eARDSFC0q%2Bz4GRSuJ8SIDTcF%2FNEtCUo4WHb%2B6eZLkaAL6eigFcoMggCoGYerax3qHCXqfelcKEehQ%2BxdfidLSWm88RtCzx4aFCNwMUi8krNmBz66NYmOcD06jAPlsDdcUHDqR%2FctOBkaQHEcwBA89X23WRn0ox4AEAJWckODnQZQKYeQGsX%2Fekj8fJ0HCeOpE6Jmbb0o3223gb66BiAG9tXoUc9BvUugIhhqfTl%2FEFtHnneDLgQ4kML%2BaDIC%2BJjoCNFbVV6JO4gRPMgzL4Qjy3EuIiuqZgfcb7oilw94E2Ns8rdkkIsA%2FzUWi5CfP5%2BYeUDV6FsMYjKA5EqfRy268RqeozdbcAgES1l2vqC8HpFEBfD14gebMFOBvsWGiEyJdaPnDmaSjALg2EcNNbD8qkYB79dXQS%2FMsy7AMyTKbje2DalMHc2jIcNW4gGASwM59f5O5AdggFlWcD7OgAFX0%2FdtW7a5RAPsD0ooYefr0jC5KxLtOzRlwYr7Ozsv7WwYaTqWGj9QWbgo9d%2BwjMkMF049yC7LWBAh7EHrIbHgKmeH6qWnAoAadTO0lEkNqS8jYplGyHagTRPC%2B7CGjgffT9DdiUfqnOVnUVkhkueun%2FAQxCzq%2FRGdFqCQeXtdMJADXqSlbUOShNtI2kjxHaAFCfD8WkUMU6THNQHDJA6KA9z1trRM8iKCuf42f34s3QsOHekcBOWIr4js1W%2BDy5T5EDPvT97IROoj6%2FevASMCGNhMYSZbuAMgudlO4oHxA6LMV8L7pRQVAKF0v4LSNylaI%2Bbq7d7GP82K5QezjJp%2Be4EAqH4uWV3nWN4dTMDamcYbASaS8%2BTuehQiZfbVyluEI%2BIPmMB4lrSP2au%2Fbs4SIIX9n3ikIswQRP%2F76NjsaeK%2BslsEwimdpksM5xNadH2Rq0ZTh%2Fat6SOUK61TtGzdzThw%2BbC8fRUDwCFMaR16IAtbozYduUMBb63YH3foWrkuI4K1joSwxkDCH6yF2RLBCS6hPeiNHUCC1OrkxClA%2F%2BGUUIJ8jeAFB4DVvzf36G%2BJGgIRxXF9tRAErgl8xfPPWIhqA331tAZJpikYuLXJMDB%2Bdg0cZSDPBRoQJveYT%2FsSZjO8%2Fuv2x5M0X0K%2B3rp8xf%2F2jZtc%2FQfD0Pw%3D%3D
>>> cur = c.cursor()
>>> cur.execute("select 1 as id")
<snowflake.connector.cursor.SnowflakeCursor object at 0xffff94c36d90>
>>> for col1 in cur:
...     print(col1)
... 
(1,)
>>> 

Can you set logging to DEBUG and collect the logs?

2024-04-10 13:12:35,819 - MainThread connection.py:395 - __init__() - INFO - Snowflake Connector for Python Version: 3.8.0, Python Version: 3.11.6, Platform: Linux-6.6.12-linuxkit-aarch64-with-glibc2.31
2024-04-10 13:12:35,819 - MainThread connection.py:701 - connect() - DEBUG - connect
2024-04-10 13:12:35,819 - MainThread connection.py:1084 - __config() - DEBUG - __config
2024-04-10 13:12:35,819 - MainThread connection.py:1235 - __config() - INFO - This connection is in OCSP Fail Open Mode. TLS Certificates would be checked for validity and revocation status. Any other Certificate Revocation related exceptions or OCSP Responder failures would be disregarded in favor of connectivity.
2024-04-10 13:12:35,819 - MainThread converter.py:159 - __init__() - DEBUG - use_numpy: False
2024-04-10 13:12:35,820 - MainThread connection.py:911 - __open_connection() - DEBUG - REST API object was created: snowflake.cedarinternal.com:443
2024-04-10 13:12:35,820 - MainThread webbrowser.py:117 - prepare() - DEBUG - authenticating by Web Browser
2024-04-10 13:12:35,820 - MainThread webbrowser.py:150 - prepare() - DEBUG - step 1: query GS to obtain SSO url
2024-04-10 13:12:35,820 - MainThread webbrowser.py:471 - _get_sso_url() - DEBUG - account={os, authenticator=EXTERNALBROWSER, user=rschack
2024-04-10 13:12:35,821 - MainThread retry.py:351 - from_int() - DEBUG - Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
2024-04-10 13:12:35,821 - MainThread retry.py:351 - from_int() - DEBUG - Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
2024-04-10 13:12:35,821 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-10 13:12:35,821 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: N/A ms, retry cnt: 1
2024-04-10 13:12:35,821 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-10 13:12:35,822 - MainThread connectionpool.py:1019 - _new_conn() - DEBUG - Starting new HTTPS connection (1): snowflake.cedarinternal.com:443
2024-04-10 13:12:35,967 - MainThread ssl_wrap_socket.py:79 - ssl_wrap_socket_with_ocsp() - DEBUG - OCSP Mode: FAIL_OPEN, OCSP response cache file name: None
2024-04-10 13:12:35,983 - MainThread ocsp_snowflake.py:492 - reset_cache_dir() - DEBUG - cache directory: /root/.cache/snowflake
2024-04-10 13:12:35,983 - MainThread ocsp_snowflake.py:530 - reset_ocsp_response_cache_uri() - DEBUG - ocsp_response_cache_uri: file:///root/.cache/snowflake/ocsp_response_cache.json
2024-04-10 13:12:35,984 - MainThread ocsp_snowflake.py:533 - reset_ocsp_response_cache_uri() - DEBUG - OCSP_VALIDATION_CACHE size: 0
2024-04-10 13:12:35,984 - MainThread ocsp_snowflake.py:332 - reset_ocsp_dynamic_cache_server_url() - DEBUG - OCSP response cache server is enabled: http://ocsp.snowflakecomputing.com/ocsp_response_cache.json
2024-04-10 13:12:35,984 - MainThread ocsp_snowflake.py:345 - reset_ocsp_dynamic_cache_server_url() - DEBUG - OCSP dynamic cache server RETRY URL: None
2024-04-10 13:12:35,984 - MainThread ocsp_snowflake.py:691 - check_ocsp_response_cache_lock_dir() - DEBUG - Failed to check OCSP response cache file. No worry. It will validate with OCSP server: file: /root/.cache/snowflake/ocsp_response_cache.json, lock directory: /root/.cache/snowflake/ocsp_response_cache.json.lck, error: [Errno 2] No such file or directory: '/root/.cache/snowflake/ocsp_response_cache.json'
2024-04-10 13:12:35,984 - MainThread ocsp_snowflake.py:579 - read_ocsp_response_cache_file() - DEBUG - Failed to locate OCSP response cache file. No worry. It will validate with OCSP server: /root/.cache/snowflake/ocsp_response_cache.json
2024-04-10 13:12:35,984 - MainThread ocsp_snowflake.py:966 - validate() - DEBUG - validating certificate: snowflake.cedarinternal.com
2024-04-10 13:12:35,985 - MainThread ocsp_snowflake.py:972 - validate() - DEBUG - skipping OCSP check: snowflake.cedarinternal.com
2024-04-10 13:12:36,078 - MainThread connectionpool.py:474 - _make_request() - DEBUG - https://snowflake.cedarinternal.com:443 "POST /session/authenticator-request HTTP/1.1" 200 878
2024-04-10 13:12:36,079 - MainThread network.py:1092 - _request_exec() - DEBUG - SUCCESS
2024-04-10 13:12:36,079 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-10 13:12:36,079 - MainThread network.py:745 - _post_request() - DEBUG - ret[code] = None, after post request
2024-04-10 13:12:36,080 - MainThread webbrowser.py:158 - prepare() - DEBUG - Validate SSO URL
2024-04-10 13:12:36,080 - MainThread webbrowser.py:176 - prepare() - DEBUG - step 2: open a browser
2024-04-10 13:12:46,089 - MainThread _auth.py:174 - authenticate() - DEBUG - authenticate
2024-04-10 13:12:46,090 - MainThread _auth.py:208 - authenticate() - DEBUG - assertion content: 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
2024-04-10 13:12:46,091 - MainThread _auth.py:211 - authenticate() - DEBUG - account={os, user=rschack, database=cedar, schema=sandbox, warehouse=compute_wh, role=cedar_read_only, request_id=d019251e-b51d-47dc-bad4-25ebc65e2641
2024-04-10 13:12:46,091 - MainThread _auth.py:244 - authenticate() - DEBUG - body['data']: {'CLIENT_APP_ID': 'PythonConnector', 'CLIENT_APP_VERSION': '3.8.0', 'SVN_REVISION': None, 'ACCOUNT_NAME': '{os', 'LOGIN_NAME': 'rschack', 'CLIENT_ENVIRONMENT': {'APPLICATION': 'PythonConnector', 'OS': 'Linux', 'OS_VERSION': 'Linux-6.6.12-linuxkit-aarch64-with-glibc2.31', 'PYTHON_VERSION': '3.11.6', 'PYTHON_RUNTIME': 'CPython', 'PYTHON_COMPILER': 'GCC 10.2.1 20210110', 'OCSP_MODE': 'FAIL_OPEN', 'TRACING': 10, 'LOGIN_TIMEOUT': None, 'NETWORK_TIMEOUT': None, 'SOCKET_TIMEOUT': None}, 'AUTHENTICATOR': 'EXTERNALBROWSER', 'TOKEN': '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', 'PROOF_KEY': '1U1n/e7aoNzu5C8d3jqTFYZy9LJdOZ76CMuTuQG1IjM=_-1_0', 'SESSION_PARAMETERS': {'CLIENT_PREFETCH_THREADS': 4, 'CLIENT_STORE_TEMPORARY_CREDENTIAL': False}}
2024-04-10 13:12:46,092 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-10 13:12:46,092 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: N/A ms, retry cnt: 1
2024-04-10 13:12:46,092 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-10 13:12:46,148 - MainThread network.py:1167 - _request_exec() - DEBUG - Hit a timeout error while logging in. Will be handled by authenticator. Ignore the following. Error stack: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 1378, in getresponse
    response.begin()
  File "/usr/local/lib/python3.11/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 799, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 1378, in getresponse
    response.begin()
  File "/usr/local/lib/python3.11/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
snowflake.connector.vendored.urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/network.py", line 1078, in _request_exec
    raw_ret = session.request(
              ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/adapters.py", line 501, in send
    raise ConnectionError(err, request=request)
snowflake.connector.vendored.requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
2024-04-10 13:12:46,160 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-10 13:12:46,160 - MainThread connection.py:1384 - _authenticate() - DEBUG - Operational Error raised at authenticationfor authenticator: AuthByWebBrowser
2024-04-10 13:12:46,160 - MainThread by_plugin.py:205 - handle_timeout() - DEBUG - Default timeout handler invoked for authenticator
2024-04-10 13:12:46,161 - MainThread by_plugin.py:214 - handle_timeout() - DEBUG - Hit connection timeout, attempt number 1. Will retry in a bit...
2024-04-10 13:12:47,163 - MainThread time_util.py:162 - increment() - DEBUG - Update retry count to 1
2024-04-10 13:12:47,164 - MainThread time_util.py:163 - increment() - DEBUG - Update sleep time to 1 seconds
2024-04-10 13:12:47,164 - MainThread _auth.py:174 - authenticate() - DEBUG - authenticate
2024-04-10 13:12:47,165 - MainThread _auth.py:208 - authenticate() - DEBUG - assertion content: 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
2024-04-10 13:12:47,166 - MainThread _auth.py:211 - authenticate() - DEBUG - account={os, user=rschack, database=cedar, schema=sandbox, warehouse=compute_wh, role=cedar_read_only, request_id=1f401f96-e71d-4046-8359-573737aea787
2024-04-10 13:12:47,167 - MainThread _auth.py:244 - authenticate() - DEBUG - body['data']: {'CLIENT_APP_ID': 'PythonConnector', 'CLIENT_APP_VERSION': '3.8.0', 'SVN_REVISION': None, 'ACCOUNT_NAME': '{os', 'LOGIN_NAME': 'rschack', 'CLIENT_ENVIRONMENT': {'APPLICATION': 'PythonConnector', 'OS': 'Linux', 'OS_VERSION': 'Linux-6.6.12-linuxkit-aarch64-with-glibc2.31', 'PYTHON_VERSION': '3.11.6', 'PYTHON_RUNTIME': 'CPython', 'PYTHON_COMPILER': 'GCC 10.2.1 20210110', 'OCSP_MODE': 'FAIL_OPEN', 'TRACING': 10, 'LOGIN_TIMEOUT': None, 'NETWORK_TIMEOUT': None, 'SOCKET_TIMEOUT': None}, 'AUTHENTICATOR': 'EXTERNALBROWSER', 'TOKEN': '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', 'PROOF_KEY': '1U1n/e7aoNzu5C8d3jqTFYZy9LJdOZ76CMuTuQG1IjM=_-1_0', 'SESSION_PARAMETERS': {'CLIENT_PREFETCH_THREADS': 4, 'CLIENT_STORE_TEMPORARY_CREDENTIAL': False}}
2024-04-10 13:12:47,168 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-10 13:12:47,169 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: N/A ms, retry cnt: 1
2024-04-10 13:12:47,169 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-10 13:12:47,172 - MainThread connectionpool.py:1019 - _new_conn() - DEBUG - Starting new HTTPS connection (2): snowflake.cedarinternal.com:443
2024-04-10 13:12:47,300 - MainThread ssl_wrap_socket.py:79 - ssl_wrap_socket_with_ocsp() - DEBUG - OCSP Mode: FAIL_OPEN, OCSP response cache file name: None
2024-04-10 13:12:47,300 - MainThread ocsp_snowflake.py:530 - reset_ocsp_response_cache_uri() - DEBUG - ocsp_response_cache_uri: file:///root/.cache/snowflake/ocsp_response_cache.json
2024-04-10 13:12:47,301 - MainThread ocsp_snowflake.py:533 - reset_ocsp_response_cache_uri() - DEBUG - OCSP_VALIDATION_CACHE size: 0
2024-04-10 13:12:47,301 - MainThread ocsp_snowflake.py:332 - reset_ocsp_dynamic_cache_server_url() - DEBUG - OCSP response cache server is enabled: http://ocsp.snowflakecomputing.com/ocsp_response_cache.json
2024-04-10 13:12:47,301 - MainThread ocsp_snowflake.py:345 - reset_ocsp_dynamic_cache_server_url() - DEBUG - OCSP dynamic cache server RETRY URL: None
2024-04-10 13:12:47,301 - MainThread ocsp_snowflake.py:691 - check_ocsp_response_cache_lock_dir() - DEBUG - Failed to check OCSP response cache file. No worry. It will validate with OCSP server: file: /root/.cache/snowflake/ocsp_response_cache.json, lock directory: /root/.cache/snowflake/ocsp_response_cache.json.lck, error: [Errno 2] No such file or directory: '/root/.cache/snowflake/ocsp_response_cache.json'
2024-04-10 13:12:47,302 - MainThread ocsp_snowflake.py:579 - read_ocsp_response_cache_file() - DEBUG - Failed to locate OCSP response cache file. No worry. It will validate with OCSP server: /root/.cache/snowflake/ocsp_response_cache.json
2024-04-10 13:12:47,302 - MainThread ocsp_snowflake.py:966 - validate() - DEBUG - validating certificate: snowflake.cedarinternal.com
2024-04-10 13:12:47,302 - MainThread ocsp_snowflake.py:972 - validate() - DEBUG - skipping OCSP check: snowflake.cedarinternal.com
2024-04-10 13:12:47,353 - MainThread network.py:1167 - _request_exec() - DEBUG - Hit a timeout error while logging in. Will be handled by authenticator. Ignore the following. Error stack: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 1378, in getresponse
    response.begin()
  File "/usr/local/lib/python3.11/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 799, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 1378, in getresponse
    response.begin()
  File "/usr/local/lib/python3.11/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
snowflake.connector.vendored.urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/network.py", line 1078, in _request_exec
    raw_ret = session.request(
              ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/snowflake/connector/vendored/requests/adapters.py", line 501, in send
    raise ConnectionError(err, request=request)
snowflake.connector.vendored.requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
2024-04-10 13:12:47,358 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-10 13:12:47,358 - MainThread connection.py:1414 - _authenticate() - DEBUG - Continuing authenticator specific timeout handling
2024-04-10 13:12:47,359 - MainThread by_plugin.py:205 - handle_timeout() - DEBUG - Default timeout handler invoked for authenticator
sfc-gh-dszmolka commented 3 months ago

hi - this looks like a duplicate of https://github.com/snowflakedb/snowflake-connector-python/issues/1637 , a feature request to support externalbrowser authentication in a headless environment, so closing this one as a duplicate

if you think your issue is entirely different, do comment please and i can reopen and look further.

rschack-cedar commented 3 months ago

@sfc-gh-dszmolka I'm not sure if it's the same issue, but it doesn't appear to be. I'm able to connect to Snowflake using externalbrowser in a Docker container, but only if I'm running in an interactive python shell. When we run the .py script from the CLI in the Docker container, then it fails. I'm always able to open the authenication URL and copy+paste the redirect URL. The failures only happen after that.

Oddly, if I include a pdb.set_trace() in the script, it suddenly works.

sfc-gh-dszmolka commented 3 months ago

The pdb.set_trace() is indeed odd. Also reopening the issue so it could be investigated separately from the other one. Thank you for the inputs!

sfc-gh-dszmolka commented 2 months ago

started looking at the issue and noticed the following:

  1. in the working scenario (python shell), the SAML assertion you get back from OKTA is 5652 long. In the non-working scenario, the assertion is much shorter, 3786 characters long - and cannot be parsed. Maybe it's a partial?
  2. another weird nuance is the account name parsed out from the setup
    2024-04-10 13:12:46,091 - MainThread _auth.py:211 - authenticate() - DEBUG -  account={os, user=rschack, database=cedar, schema=sandbox, warehouse=compute_wh

observe account={os which does not seem very correct, however looks to have a similar pattern as in the connection config:

c = snowflake.connector.connect(
    account=f"{{os.getenv('SF_ACCOUNT_ID')}}.us-east-1.privatelink",

almost as the connector would believe that up to the first dot (which is usually the region separator like xy12345.us-east-1) {os is the account part.

Obviously, our situation is different in a way that I don't have a reverse proxy in front of my Snowflake account but when I run the script in a container in a non-interactive manner:

import snowflake.connector
import os

c = snowflake.connector.connect(
    account=os.getenv("SFACCOUNT")
    #host="snowflake.cedarinternal.com",
    #port=443,
    authenticator="externalbrowser",
    user=os.getenv("SFUSER")
)

cur = c.cursor()
cur.execute("select 1 as id")
for col1 in cur:
    print(col1)

it threw the Okta URL, which when manually copied into a browser then the response back into the prompt opened by the PythonConnector, allows to authenticate and run the select.

Would you be able to test a couple of things and see if they help?

  1. this would be the quickest probably; instead account=f"{{os.getenv('SF_ACCOUNT_ID')}}.us-east-1.privatelink", trying something like account=os.getenv('SF_ACCOUNT_ID') + '.us-east-1.privatelink' or some other method which would make sure no templating elements can accidentally get into the account definition ?

  2. if it doesn't help; then trying to use the Snowflake account directly instead of the proxy address (snowflake.cedarinternal.com) ? Asking because the error message Remote end closed connection without response does not come from Snowflake, if the connection is happening to the proxy instead:

    2024-04-10 13:12:35,820 - MainThread connection.py:911 - __open_connection() - DEBUG - REST API object was created: snowflake.cedarinternal.com:443

Can you please check sometimes when you get a chance ?

rschack-cedar commented 2 months ago

@sfc-gh-dszmolka Thanks for looking into this. I hardcoded the account ID in the format of account="<account_id>.us-east-1.privatelink (where <account_id> is the actual ID value) and it made no difference. Here's that same log message now:

2024-04-23 19:42:08,643 - MainThread _auth.py:211 - authenticate() - DEBUG - account=<account_id>, user=rschack, database=cedar, schema=sandbox, warehouse=compute_wh, role=cedar_read_only, request_id=6faf81bf-6f31-46ed-a29c-0c19d6caaefd

When I remove the host and port options, I get the following error:

snowflake.connector.errors.DatabaseError: 250001 (08001): None: Failed to connect to DB: <account_id>.us-east-1.privatelink.snowflakecomputing.com:443. SAML response is invalid or matching user is not found. Contact your local system administrator and provide the error code - . The administrator can obtain troubleshooting information at https://docs.snowflake.com/en/user-guide/errors-saml#saml-error-codes.

In case it's helpful, here's a log file when I'm able to successfully connect in the python shell

2024-04-23 19:46:48,570 - MainThread connection.py:395 - __init__() - INFO - Snowflake Connector for Python Version: 3.8.0, Python Version: 3.11.6, Platform: Linux-6.6.12-linuxkit-aarch64-with-glibc2.31
2024-04-23 19:46:48,571 - MainThread connection.py:701 - connect() - DEBUG - connect
2024-04-23 19:46:48,572 - MainThread connection.py:1084 - __config() - DEBUG - __config
2024-04-23 19:46:48,572 - MainThread connection.py:1235 - __config() - INFO - This connection is in OCSP Fail Open Mode. TLS Certificates would be checked for validity and revocation status. Any other Certificate Revocation related exceptions or OCSP Responder failures would be disregarded in favor of connectivity.
2024-04-23 19:46:48,572 - MainThread converter.py:159 - __init__() - DEBUG - use_numpy: False
2024-04-23 19:46:48,573 - MainThread connection.py:911 - __open_connection() - DEBUG - REST API object was created: snowflake.cedarinternal.com:443
2024-04-23 19:46:48,573 - MainThread webbrowser.py:117 - prepare() - DEBUG - authenticating by Web Browser
2024-04-23 19:46:48,574 - MainThread webbrowser.py:150 - prepare() - DEBUG - step 1: query GS to obtain SSO url
2024-04-23 19:46:48,575 - MainThread webbrowser.py:471 - _get_sso_url() - DEBUG - account={os, authenticator=EXTERNALBROWSER, user=rschack
2024-04-23 19:46:48,576 - MainThread retry.py:351 - from_int() - DEBUG - Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
2024-04-23 19:46:48,576 - MainThread retry.py:351 - from_int() - DEBUG - Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
2024-04-23 19:46:48,576 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-23 19:46:48,576 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: N/A ms, retry cnt: 1
2024-04-23 19:46:48,577 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-23 19:46:48,579 - MainThread connectionpool.py:1019 - _new_conn() - DEBUG - Starting new HTTPS connection (1): snowflake.cedarinternal.com:443
2024-04-23 19:46:48,773 - MainThread ssl_wrap_socket.py:79 - ssl_wrap_socket_with_ocsp() - DEBUG - OCSP Mode: FAIL_OPEN, OCSP response cache file name: None
2024-04-23 19:46:48,811 - MainThread ocsp_snowflake.py:492 - reset_cache_dir() - DEBUG - cache directory: /root/.cache/snowflake
2024-04-23 19:46:48,812 - MainThread ocsp_snowflake.py:530 - reset_ocsp_response_cache_uri() - DEBUG - ocsp_response_cache_uri: file:///root/.cache/snowflake/ocsp_response_cache.json
2024-04-23 19:46:48,812 - MainThread ocsp_snowflake.py:533 - reset_ocsp_response_cache_uri() - DEBUG - OCSP_VALIDATION_CACHE size: 209
2024-04-23 19:46:48,812 - MainThread ocsp_snowflake.py:332 - reset_ocsp_dynamic_cache_server_url() - DEBUG - OCSP response cache server is enabled: http://ocsp.snowflakecomputing.com/ocsp_response_cache.json
2024-04-23 19:46:48,812 - MainThread ocsp_snowflake.py:345 - reset_ocsp_dynamic_cache_server_url() - DEBUG - OCSP dynamic cache server RETRY URL: None
2024-04-23 19:46:48,812 - MainThread ocsp_snowflake.py:966 - validate() - DEBUG - validating certificate: snowflake.cedarinternal.com
2024-04-23 19:46:48,813 - MainThread ocsp_snowflake.py:972 - validate() - DEBUG - skipping OCSP check: snowflake.cedarinternal.com
2024-04-23 19:46:48,921 - MainThread connectionpool.py:474 - _make_request() - DEBUG - https://snowflake.cedarinternal.com:443 "POST /session/authenticator-request HTTP/1.1" 200 898
2024-04-23 19:46:48,922 - MainThread network.py:1092 - _request_exec() - DEBUG - SUCCESS
2024-04-23 19:46:48,923 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-23 19:46:48,923 - MainThread network.py:745 - _post_request() - DEBUG - ret[code] = None, after post request
2024-04-23 19:46:48,923 - MainThread webbrowser.py:158 - prepare() - DEBUG - Validate SSO URL
2024-04-23 19:46:48,924 - MainThread webbrowser.py:176 - prepare() - DEBUG - step 2: open a browser
2024-04-23 19:46:55,877 - MainThread _auth.py:174 - authenticate() - DEBUG - authenticate
2024-04-23 19:46:55,878 - MainThread _auth.py:208 - authenticate() - DEBUG - assertion content: 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
2024-04-23 19:46:55,878 - MainThread _auth.py:211 - authenticate() - DEBUG - account={os, user=rschack, database=cedar, schema=sandbox, warehouse=compute_wh, role=cedar_read_only, request_id=b1150965-6a2b-429a-b397-842471474eac
2024-04-23 19:46:55,879 - MainThread _auth.py:244 - authenticate() - DEBUG - body['data']: {'CLIENT_APP_ID': 'PythonConnector', 'CLIENT_APP_VERSION': '3.8.0', 'SVN_REVISION': None, 'ACCOUNT_NAME': '{os', 'LOGIN_NAME': 'rschack', 'CLIENT_ENVIRONMENT': {'APPLICATION': 'PythonConnector', 'OS': 'Linux', 'OS_VERSION': 'Linux-6.6.12-linuxkit-aarch64-with-glibc2.31', 'PYTHON_VERSION': '3.11.6', 'PYTHON_RUNTIME': 'CPython', 'PYTHON_COMPILER': 'GCC 10.2.1 20210110', 'OCSP_MODE': 'FAIL_OPEN', 'TRACING': 10, 'LOGIN_TIMEOUT': None, 'NETWORK_TIMEOUT': None, 'SOCKET_TIMEOUT': None}, 'AUTHENTICATOR': 'EXTERNALBROWSER', 'TOKEN': '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', 'PROOF_KEY': '+FTpknIkT21kmRj4T+2XvL5Fa2D7YsoWIGqNxFbUCLE=_-1_0', 'SESSION_PARAMETERS': {'CLIENT_PREFETCH_THREADS': 4, 'CLIENT_STORE_TEMPORARY_CREDENTIAL': False}}
2024-04-23 19:46:55,880 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-23 19:46:55,880 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: N/A ms, retry cnt: 1
2024-04-23 19:46:55,880 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-23 19:46:56,234 - MainThread connectionpool.py:474 - _make_request() - DEBUG - https://snowflake.cedarinternal.com:443 "POST /session/v1/login-request?request_id=b1150965-6a2b-429a-b397-842471474eac&databaseName=cedar&schemaName=sandbox&warehouse=compute_wh&roleName=cedar_read_only HTTP/1.1" 200 None
2024-04-23 19:46:56,236 - MainThread network.py:1092 - _request_exec() - DEBUG - SUCCESS
2024-04-23 19:46:56,237 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-23 19:46:56,237 - MainThread network.py:745 - _post_request() - DEBUG - ret[code] = None, after post request
2024-04-23 19:46:56,238 - MainThread _auth.py:371 - authenticate() - DEBUG - completed authentication
2024-04-23 19:46:56,238 - MainThread _auth.py:418 - authenticate() - DEBUG - token = ******
2024-04-23 19:46:56,239 - MainThread _auth.py:424 - authenticate() - DEBUG - master_token = ******
2024-04-23 19:46:56,239 - MainThread _auth.py:430 - authenticate() - DEBUG - id_token = NULL
2024-04-23 19:46:56,240 - MainThread _auth.py:436 - authenticate() - DEBUG - mfa_token = NULL
2024-04-23 19:46:58,533 - MainThread connection.py:830 - cursor() - DEBUG - cursor
2024-04-23 19:46:58,534 - MainThread cursor.py:910 - execute() - DEBUG - executing SQL/command
2024-04-23 19:46:58,534 - MainThread cursor.py:925 - execute() - DEBUG - query: [select 1 as id]
2024-04-23 19:46:58,534 - MainThread cursor.py:766 - _preprocess_pyformat_query() - DEBUG - binding: [select 1 as id] with input=[None], processed=[{}]
2024-04-23 19:46:58,535 - MainThread connection.py:1606 - _next_sequence_counter() - DEBUG - sequence counter: 1
2024-04-23 19:46:58,535 - MainThread cursor.py:640 - _execute_helper() - DEBUG - Request id: cff2fc3c-d595-413e-a1a2-7ea48ddb2cf9
2024-04-23 19:46:58,535 - MainThread cursor.py:642 - _execute_helper() - DEBUG - running query [select 1 as id]
2024-04-23 19:46:58,535 - MainThread cursor.py:649 - _execute_helper() - DEBUG - is_file_transfer: True
2024-04-23 19:46:58,536 - MainThread connection.py:1269 - cmd_query() - DEBUG - _cmd_query
2024-04-23 19:46:58,536 - MainThread _query_context_cache.py:155 - serialize_to_dict() - DEBUG - serialize_to_dict() called
2024-04-23 19:46:58,536 - MainThread connection.py:1296 - cmd_query() - DEBUG - sql=[select 1 as id], sequence_id=[1], is_file_transfer=[False]
2024-04-23 19:46:58,537 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-23 19:46:58,537 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: N/A ms, retry cnt: 1
2024-04-23 19:46:58,537 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-23 19:46:58,737 - MainThread connectionpool.py:474 - _make_request() - DEBUG - https://snowflake.cedarinternal.com:443 "POST /queries/v1/query-request?requestId=cff2fc3c-d595-413e-a1a2-7ea48ddb2cf9 HTTP/1.1" 200 None
2024-04-23 19:46:58,739 - MainThread network.py:1092 - _request_exec() - DEBUG - SUCCESS
2024-04-23 19:46:58,740 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-23 19:46:58,740 - MainThread network.py:745 - _post_request() - DEBUG - ret[code] = None, after post request
2024-04-23 19:46:58,740 - MainThread network.py:771 - _post_request() - DEBUG - Query id: 01b3de22-0409-85b1-0000-1ae935c79baa
2024-04-23 19:46:58,741 - MainThread _query_context_cache.py:189 - deserialize_json_dict() - DEBUG - deserialize_json_dict() called: data from server: {'entries': [{'id': 0, 'timestamp': 222767833098528, 'priority': 0}]}
2024-04-23 19:46:58,741 - MainThread _query_context_cache.py:230 - deserialize_json_dict() - DEBUG - deserialize {'id': 0, 'timestamp': 222767833098528, 'priority': 0}
2024-04-23 19:46:58,742 - MainThread _query_context_cache.py:101 - _sync_priority_map() - DEBUG - sync_priority_map called priority_map size = 0, new_priority_map size = 1
2024-04-23 19:46:58,742 - MainThread _query_context_cache.py:127 - trim_cache() - DEBUG - trim_cache() called. treeSet size is 1 and cache capacity is 5
2024-04-23 19:46:58,742 - MainThread _query_context_cache.py:136 - trim_cache() - DEBUG - trim_cache() returns. treeSet size is 1 and cache capacity is 5
2024-04-23 19:46:58,743 - MainThread _query_context_cache.py:269 - deserialize_json_dict() - DEBUG - deserialize_json_dict() returns
2024-04-23 19:46:58,743 - MainThread _query_context_cache.py:274 - log_cache_entries() - DEBUG - Cache Entry: (0, 222767833098528, 0)
2024-04-23 19:46:58,744 - MainThread cursor.py:983 - execute() - DEBUG - sfqid: 01b3de22-0409-85b1-0000-1ae935c79baa
2024-04-23 19:46:58,744 - MainThread cursor.py:989 - execute() - DEBUG - query execution done
2024-04-23 19:46:58,745 - MainThread cursor.py:1003 - execute() - DEBUG - SUCCESS
2024-04-23 19:46:58,745 - MainThread cursor.py:1022 - execute() - DEBUG - PUT OR GET: False
2024-04-23 19:46:58,746 - MainThread cursor.py:1135 - _init_result_and_meta() - DEBUG - Query result format: arrow
2024-04-23 19:46:58,746 - MainThread cursor.py:1149 - _init_result_and_meta() - INFO - Number of results in first chunk: 1
2024-04-23 19:47:00,538 - MainThread result_batch.py:68 - _create_nanoarrow_iterator() - DEBUG - Using nanoarrow as the arrow data converter
2024-04-23 19:47:00,538 - MainThread CArrowIterator.cpp:120 - CArrowIterator() - DEBUG - Arrow BatchSize: 1
2024-04-23 19:47:00,539 - MainThread CArrowChunkIterator.cpp:46 - CArrowChunkIterator() - DEBUG - Arrow chunk info: batchCount 1, columnCount 1, use_numpy: 0
2024-04-23 19:47:00,539 - MainThread nanoarrow_arrow_iterator.cpython-311-aarch64-linux-gnu.so:0 - __cinit__() - DEBUG - Batches read: 0
2024-04-23 19:47:00,540 - MainThread result_set.py:68 - result_set_iterator() - DEBUG - beginning to schedule result batch downloads
2024-04-23 19:47:00,540 - MainThread CArrowChunkIterator.cpp:70 - next() - DEBUG - Current batch index: 0, rows in current batch: 1
2024-04-23 19:47:02,414 - MainThread connection.py:758 - close() - INFO - closed
2024-04-23 19:47:02,414 - MainThread telemetry.py:211 - close() - DEBUG - Closing telemetry client.
2024-04-23 19:47:02,414 - MainThread connection.py:764 - close() - INFO - No async queries seem to be running, deleting session
2024-04-23 19:47:02,415 - MainThread network.py:1224 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 1/1 active sessions
2024-04-23 19:47:02,415 - MainThread network.py:875 - _request_exec_wrapper() - DEBUG - remaining request timeout: 5000 ms, retry cnt: 1
2024-04-23 19:47:02,415 - MainThread network.py:1065 - _request_exec() - DEBUG - socket timeout: 60
2024-04-23 19:47:02,529 - MainThread connectionpool.py:474 - _make_request() - DEBUG - https://snowflake.cedarinternal.com:443 "POST /session?delete=true HTTP/1.1" 200 None
2024-04-23 19:47:02,532 - MainThread network.py:1092 - _request_exec() - DEBUG - SUCCESS
2024-04-23 19:47:02,533 - MainThread network.py:1229 - _use_requests_session() - DEBUG - Session status for SessionPool 'snowflake.cedarinternal.com', SessionPool 0/1 active sessions
2024-04-23 19:47:02,534 - MainThread network.py:745 - _post_request() - DEBUG - ret[code] = None, after post request
2024-04-23 19:47:02,535 - MainThread _query_context_cache.py:141 - clear_cache() - DEBUG - clear_cache() called
2024-04-23 19:47:02,536 - MainThread connection.py:777 - close() - DEBUG - Session is closed
sfc-gh-dszmolka commented 2 months ago

@rschack-cedar thank you for testing !

So getting the SAML assertion error means you actually got past the original error (http.client.RemoteDisconnected: Remote end closed connection without response) when not going through your reverse proxy at snowflake.cedarinternal.com , because now you could connect to Snowflake but since your SAML assertion is full of custom attributes which Snowflake does not necessary support (and to start with, the account attribute is missing), you get a different error back. (You can look into the assertion by copypasting the content into a tool like samltool.io)

But that means you now at least could connect to Snowflake (and the auth attempt was refused), contrary to the prior status of the connection being unexpectedly closed down by the proxy)

I would guess the SAML response is purposefully built in such a way for your company because you depend on the various attributes, this is not a problem.

How to proceed with this issue?

  1. a possible way would be to debug this together with the people who have access to the reverse proxy internals, and see why it resets the connection in certain occasions
  2. or if you're up for experimenting more, you can set up a different (e.g. dev) Okta account to not interfere with your production settings (there are multiple guides, for example this) , with a test account which does not have the proxy in front of it and connect to it. I had such a scenario in my repro and worked , of course it assumes the port is forwarded out of the container and you're able to copy/paste the Okta URL and the authentication response from, and back to the PythonConnector prompt.
rschack-cedar commented 2 months ago

@sfc-gh-dszmolka Thanks David, I will investigate our reverse proxy (Cyral) in more detail. We were able to temporarily disable it, and I could connect to Snowflake (after removing the host and port params).

sfc-gh-dszmolka commented 2 months ago

this is good news, thank you for letting me know ! Now the investigation can be focused at least. Speaking about which, if you don't need further help with this one, I recommend marking this issue as closed as it doesn't seem to be with the Snowflake Python Connector.