मैं cx_Oracle द्वारा आवश्यक जावा पक्ष को C पक्ष में परिवर्तित करने में मदद नहीं कर सकता, लेकिन शायद निम्नलिखित यह दिखाने में मदद करेगा कि cx_Oracle को क्या चाहिए। मैं Oracle Exadata एक्सप्रेस पर आधारित एक उदाहरण का उपयोग करूंगा, जो कनेक्ट करने के लिए एक वॉलेट का उपयोग करता है, स्क्रिप्टिंग भाषाओं को Exadata Express से जोड़ने के लिए सामान्य निर्देश देखें यहां ।
आपकी सटीक कॉन्फ़िगरेशन और फ़ाइलें भिन्न हो सकती हैं। जैसा कि एंथनी ने संकेत दिया था, सुरक्षा सेटअप cx_Oracle के लिए विशिष्ट नहीं है। अधिक अनुभवी और सहायक सुरक्षा विशेषज्ञ अन्य फ़ोरम में छिप सकते हैं।
Exadata Express के लिए, पहले से आपूर्ति की गई वॉलेट ज़िप फ़ाइल डाउनलोड की जाती है। Oracle कॉल इंटरफ़ेस अनुप्रयोगों जैसे cx_Oracle के लिए हमें बस ज़िप से इन फ़ाइलों की आवश्यकता है:sqlnet.ora, tnsnames.ora, और cwallet.sso। आपको ये (या आपको जो भी चाहिए) फाइलें बनाने/ढूंढने की जरूरत होगी।
मेरी फ़ाइलें हैं:
sqlnet.ora :
WALLET_LOCATION = (SOURCE = (METHOD = file)
(METHOD_DATA = (DIRECTORY="$TNS_ADMIN")))
SSL_SERVER_DN_MATCH=yes
tnsnames.ora :
dbaccess = (description=
(address=(protocol=tcps)(port=1522)(host=whereever.com))
(connect_data=(service_name=whereever2.com))
(security=(ssl_server_cert_dn="CN=wherever2.com,O=Oracle Corporation,L=Redwood Shores,ST=California,C=US"))
)
cwallet.sso :मैं इसे आपकी कल्पना पर छोड़ता हूँ...
मैंने उन तीन फाइलों को /Users/cjones/Cloud
. में रखा है और उन्हें खोजने के लिए परिवेश सेट करें:
$ export TNS_ADMIN=/Users/cjones/Cloud
अब मैं tnsnames.ora
. में कनेक्शन नाम का उपयोग करके कनेक्ट कर सकता हूं फ़ाइल:
$ sqlplus -l cj/[email protected]
SQL*Plus: Release 12.2.0.1.0 Production on Fri Jul 6 10:20:21 2018
Copyright (c) 1982, 2017, Oracle. All rights reserved.
Last Successful login time: Tue Jul 03 2018 13:00:06 +10:00
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>
cx_Oracle में आपका dsn
होगा dbaccess
भी।