ASP.NET не будет подключаться к Oracle через SSL, консольное приложение будет. Чем отличается? - PullRequest
1 голос
/ 09 октября 2019

Я пытаюсь подключиться к клиентской базе данных Oracle через SSL с помощью управляемого поставщика ODP.NET. Клиент предоставил самоподписанный сертификат, который я импортировал на сервер. Чтобы проверить соединение, я создал консольное приложение, которое просто открывает соединение, а затем закрывает его. Это успешно работает. Однако при попытке выполнить одно и то же простое подключение из ASP.NET на одном и том же сервере , я всегда получаю эту ошибку:

Oracle.ManagedDataAccess.Client.OracleException (0x80004005): Network Transport: SSL failure in parsing wallet location ---> 
OracleInternal.Network.NetworkException (0xFFFFE700): Network Transport: SSL failure in parsing wallet location

Вот строка подключения:

Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL = TCPS)(HOST = xxx.xx.xx.xxx)(PORT = 3484))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME = TEST.CLIENT.COM)(SID = TEST))); User Id = userid; Password = pa55word;

В файлах конфигурации я указываю каталог для настроек SQLNET:

<oracle.manageddataaccess.client>
  <version number="*">
    <settings>
      <setting name="TNS_ADMIN" value="C:\Oracle\tnsfiles" />
    </settings>
  </version>
</oracle.manageddataaccess.client>

И, наконец, эти настройки из sqlnet.ora в этом каталоге:

SQLNET.AUTHENTICATION_SERVICES=(BEQ,TCPS)
ENCRYPTION_WALLET_LOCATION = (SOURCE=(METHOD=MCS))
WALLET_LOCATION= (SOURCE=(METHOD=MCS))
SSL_CLIENT_AUTHENTICATION = FALSE
SSL_VERSION = 1.2

Есть лилюбая причина, почему соединение из консольного приложения успешно, но из ASP.NET это терпит неудачу при ошибке кошелька? Они используют точно такие же настройки. Я пробовал много разных вещей, но я приветствую любые предложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...