El connector de Snowflake per a Python 5 admet camps de proxy a nivell de connexió. Per a una aplicació que manté les seves opcions de connexió habituals per separat:

connection = snowflake.connector.connect(
    **connection_options,
    proxy_host='proxy.example',
    proxy_port=8080,
    use_proxy_env=False,
)

connection_options conté la configuració existent del compte i l'autenticació de Snowflake, sense claus de proxy duplicades. proxy_user i proxy_password forneixen un compte intermediari separat quan cal. Per a una ruta de proxy públic permesa sense aquest compte, preneu valors candidats de proxy_host i proxy_port de la llista de proxys HTTP.

Per defecte use_proxy_env és cert i el connector llegeix HTTP_PROXY, HTTPS_PROXY i NO_PROXY. A la versió 5, un proxy_host o proxy_port explícit té prioritat sobre aquests valors d'entorn. Establir use_proxy_env=False desactiva deliberadament el seu ús.

El comportament documentat des de 3.17.0 però abans de la versió 5 feia que els valors d'entorn superessin l'amfitrió i el port explícits. Manteniu la versió del connector amb una comparació entre desplegaments.

Snowflake també exigeix que el seu certificat passi sense canvis d'intercepció. Una ruta pel proxy corporatiu no autoritza substituir el certificat del servei per un certificat d'inspecció arbitrari.

Per a exclusions, NO_PROXY accepta sufixos d'amfitrió o adreces IP separats per comes, no expressions amb comodins. Configureu l'entorn real del treballador de Python quan feu servir aquesta ruta, inclòs un treballador de Django o un procés de quadern.

Articles relacionats