Snowpark Scala अपने JDBC कनेक्शन को प्रॉक्सी विकल्प भेजता है
Snowpark Scala सत्र कॉन्फ़िगरेशन मैप में Snowflake JDBC के useProxy, proxyHost और proxyPort गुण जोड़ें।
Snowpark Scala जुड़ने के लिए Snowflake JDBC ड्राइवर का उपयोग करता है। इसका सत्र बिल्डर JDBC कॉन्फ़िगरेशन गुण स्वीकार करता है, इसलिए प्रॉक्सी सेटिंग्स मौजूदा कनेक्शन मैप के साथ जा सकती हैं:
val proxyOptions = Map(
"useProxy" -> "true",
"proxyHost" -> "proxy.example",
"proxyPort" -> "8080"
)
val session = com.snowflake.snowpark.Session.builder
.configs(connectionOptions ++ proxyOptions)
.create
connectionOptions में खाता, प्रमाणीकरण और अन्य सेटिंग्स होती हैं जिन्हें ऐप पहले से उपयोग करता है। ये Scala स्ट्रिंग-मैप प्रविष्टियाँ हैं; प्रॉक्सी होस्टनाम में URL स्कीम या उसका पोर्ट शामिल नहीं होता। प्रॉक्सी प्रमाणीकरण के बिना अनुमत सार्वजनिक-प्रॉक्सी मार्ग के लिए Snowflake खाता सेटिंग्स रखते हुए HTTP प्रॉक्सी सूची से होस्ट और पोर्ट चुनें।
Snowflake JDBC मध्यस्थ खाते के लिए proxyUser और proxyPassword का भी दस्तावेज़ीकरण करता है। आवश्यक होने पर उन्हें ऐप के मौजूदा क्रेडेंशियल स्रोत से दें।
JDBC का nonProxyHosts वाइल्डकार्ड समर्थन के साथ पाइप से अलग किए गए पैटर्न का उपयोग करता है। मैप मान में विभाजक शाब्दिक | होता है; URL एन्कोडिंग तब प्रासंगिक होती है जब JDBC URL बनाया जाता है। किसी दूसरे क्लाइंट के कॉमा से अलग NO_PROXY सिंटैक्स को इसकी जगह न रखें।
इस कॉन्फ़िगरेशन को Snowpark Scala तक ही सीमित रखें। Snowpark Python और Snowflake Spark कनेक्टर अलग कनेक्शन इंटरफ़ेस और विकल्प नाम देते हैं।
Snowflake चाहता है कि सेवा प्रमाणपत्र बिना बदले प्रॉक्सी से गुज़रे। HTTP CONNECT मार्ग और TLS निरीक्षण अलग व्यवस्थाएँ हैं; जो प्रॉक्सी Snowflake प्रमाणपत्र फिर से जारी करता है वह इस शर्त को पूरा नहीं करता।