Snowpark Scala passa as opções de proxy para sua conexão JDBC
Adicione as propriedades useProxy, proxyHost e proxyPort do JDBC do Snowflake ao mapa de configuração da sessão do Snowpark Scala.
Snowpark Scala conecta-se com o driver JDBC do Snowflake. Seu construtor de sessão aceita propriedades de configuração JDBC, então as definições de proxy podem viajar com o mapa de conexão existente:
val proxyOptions = Map(
"useProxy" -> "true",
"proxyHost" -> "proxy.example",
"proxyPort" -> "8080"
)
val session = com.snowflake.snowpark.Session.builder
.configs(connectionOptions ++ proxyOptions)
.create
connectionOptions contém a conta, a autenticação e outras definições que o aplicativo já usa. São entradas de mapa de strings Scala; o nome do host do proxy não inclui esquema de URL nem sua porta. Para uma rota de proxy público permitida sem autenticação de proxy, escolha host e porta da lista de proxies HTTP mantendo as definições da conta Snowflake.
O JDBC do Snowflake também documenta proxyUser e proxyPassword para uma conta intermediária. Forneça-os pela fonte de credenciais existente do aplicativo quando necessário.
O nonProxyHosts do JDBC usa padrões separados por barras verticais com suporte a curingas. Em um valor de mapa, o separador é um | literal; a codificação URL só é relevante ao construir uma URL JDBC. Não o substitua pela sintaxe NO_PROXY de outro cliente separada por vírgulas.
Mantenha esta configuração específica do Snowpark Scala. Snowpark Python e o conector Snowflake para Spark expõem interfaces de conexão e nomes de opção diferentes.
O Snowflake exige que o certificado do serviço atravesse o proxy sem substituição. Uma rota HTTP CONNECT e a inspeção TLS são arranjos diferentes; um proxy que reemite o certificado do Snowflake não atende a esse requisito.