Java側をcx_Oracleが必要とするC側に変換するのは仕方がありませんが、cx_Oracleが何を必要としているかを示すのに役立つかもしれません。ウォレットを使用して接続するOracleExadataExpressに基づく例を使用します。スクリプト言語をExadataExpressに接続するための一般的な手順を参照してください
正確な設定とファイルは異なる場合があります。 Anthonyが示したように、セキュリティ設定はcx_Oracleに固有のものではありません。より経験豊富で役立つセキュリティの専門家が他のフォーラムに潜んでいる可能性があります。
Exadata Expressの場合、事前に提供されたウォレットのzipファイルがダウンロードされます。 cx_OracleなどのOracleCallInterfaceアプリケーションの場合、zipから次のファイルが必要です: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 :これはあなたの想像に任せます...
これらの3つのファイルを/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
になります