Мне нужно подключиться к нашей базе данных Oracle 12 c с использованием клиентских сертификатов и C#. Мне нужно знать правильный метод / настройки, чтобы сделать это. Наша база данных работает на Linux, а клиенты - Windows. У нас уже есть PKI и клиентские сертификаты, созданные и работающие с базой данных с помощью Toad. Мне просто нужно знать, как правильно подключиться в C# и либо запросить сертификат, либо прагматично поставить его для подключения. Тестовая программа выдает исключение с этим сообщением: «ORA-00542: Сбой во время рукопожатия SSL».
Совет от нашего администратора базы данных: «Не используйте кошельки». Не уверен, что это правильно.
Тестовая программа: (URI, SID, SSL_SERVER_CERT_DN опущены)
using Oracle.ManagedDataAccess.Client; // version 4.122.18.3 [18c]
using System;
namespace OracleCert
{
class Program
{
static void Main(string[] args)
{
using (OracleConnection connection = new OracleConnection())
{
try
{
connection.ConnectionString = @"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=server.uri)(PORT=2484))(CONNECT_DATA=(SID=XXXXXX))(SECURITY=(SSL_SERVER_CERT_DN=CN=CCCCC,OU=OOOO,OU=OOO,OU=OOO,O=OOOO,C=CC)));User Id=EXTERNAL";
connection.Open();
Console.WriteLine("Connected to Oracle" + connection.ServerVersion);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.ReadLine();
}
}
}
}