大家好,我正在尝试从我的 dot net 应用程序连接 Oracle Db,但出现错误:
网络传输:解析钱包位置的 SSL 失败
我的 Windows 证书存储中有所有必需的证书。我的连接字符串是:
<appSettings>
<add key="IMConnectionString" value="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=abc-prod-rds-01.cvi0vpnztsiw.eu-central-1.rds.amazonaws.com)(PORT=2484))(CONNECT_DATA=(SID=abcprod)) (SECURITY = (SSL_SERVER_CERT_DN = C=US,ST=Washington,L=Seattle,O=Amazon Web Services,OU=Amazon RDS,CN=Amazon RDS Root 2019 CA))); Password = *****; User ID = ****"/>
我在 app.config 中的配置是:
<oracle.manageddataaccess.client>
<version number="*">
<settings>
<setting name="WALLET_LOCATION" value="(SOURCE = (METHOD = MCS))" />
<setting name="TraceLevel" value="7" />
<setting name="TraceOption" value="1" />
<setting name="TraceFileLocation" value="C:\trace" />
</settings>
<dataSources>
<dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=2484))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
</dataSources>
</version>
</oracle.manageddataaccess.client>
我正在像这样进行数据库调用:
var queryExecutor = _executor.GetQueryExecutor(item.QueryDatabase);
DataSet ds = queryExecutor.ExecuteQuery(item);
请让我知道我错过了什么?
在 ODP.NET 跟踪中,我也得到以下跟踪:
Oracle.ManagedDataAccess.Client.OracleException (0x80004005):网络传输:解析钱包位置时 SSL 失败 ---> OracleInternal.Network.NetworkException (0xFFFFE700):网络传输:解析钱包位置时 SSL 失败
在 RDS 服务器端,我可以看到以下错误:
2021 年 6 月 22 日 17:58:23(地址 =(协议 = tcps)(主机 = 46.19.253.127)(端口 = 5526))* 542 TNS-00542:SSL 握手失败 TNS-12560:TNS:协议适配器错误