Snowpark Scala bruger Snowflake JDBC-driveren til at forbinde. Dets sessionsbygger accepterer JDBC-konfigurationsegenskaber, så proxyindstillinger kan følge med det eksisterende forbindelseskort:

val proxyOptions = Map(
  "useProxy" -> "true",
  "proxyHost" -> "proxy.example",
  "proxyPort" -> "8080"
)

val session = com.snowflake.snowpark.Session.builder
  .configs(connectionOptions ++ proxyOptions)
  .create

connectionOptions indeholder kontoen, godkendelsen og andre indstillinger, som applikationen allerede bruger. Det er Scala-strengkortposter; proxyværtsnavnet indeholder hverken URL-skema eller port. Til en tilladt offentlig proxy-rute uden proxygodkendelse vælges vært og port fra HTTP-proxylisten, mens Snowflake-kontoindstillingerne bevares.

Snowflake JDBC dokumenterer også proxyUser og proxyPassword til en mellemregningskonto. Angiv dem via applikationens eksisterende legitimationskilde, når det er nødvendigt.

JDBC's nonProxyHosts bruger pipeadskilte mønstre med understøttelse af jokertegn. I en kortværdi er skillet et bogstaveligt |; URL-kodning bliver først relevant, når der i stedet bygges en JDBC-URL. Erstat det ikke med en anden klients kommaadskilte NO_PROXY-syntaks.

Hold denne konfiguration specifik for Snowpark Scala. Snowpark Python og Snowflake Spark-forbindelsen tilbyder andre forbindelsesinterfaces og indstillingsnavne.

Snowflake kræver, at tjenestecertifikatet passerer proxyen uden udskiftning. En HTTP CONNECT-rute og TLS-inspektion er forskellige ordninger; en proxy, der genudsteder Snowflake-certifikatet, opfylder ikke det krav.

Relaterede artikler