Как использовать Oracle Wallet и веб-API .net

Я использую кошелек оракула для входа в экземпляр БД Oracle 11 из моего кода .net Web API 2.

проблема в том, что если я не укажу идентификатор пользователя и пароль в строке подключения, кошелек oracle выдает

Error MessageORA-01017: invalid username/password; logon denied

что не оправдывает использование кошелька! Я много гуглил, но мне не повезло с любым возможным решением.

sqlnet.ora

sqlnet.authentication_services=(NTS)
ssl_client_authentication=false
WALLET_LOCATION=
(SOURCE=
 (METHOD=FILE)
 (METHOD_DATA=
     (DIRECTORY=c:\temp\wallet)
 )
)

Tnsnames.ora

source= (DESCRIPTION=(ADDRESS=(PROTOCOL=<PROTOCOL>)(HOST=<server hostname>)PORT=<PORT>))(CONNECT_DATA=(SERVICE_NAME=<Global DB Name>)))

мой файл web.config читает определенный раздел, как показано ниже - таким образом соединение завершается с ошибкой, указанной выше.

<settings>
<setting name="TNS_ADMIN" value="C:\ORA\TNSFILES"/>
<setting name="WALLET_LOCATION" value="(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=c:\temp\wallet)))"/>
<setting name="SSL_VERSION" value= "0" />
<setting name="SSL_CLIENT_AUTHENTICATION" value = "TRUE" />
</settings>

<connectionStrings>
<add name="OracleWallet1" providerName="oracle.manageddataaccess.client"     connectionString="Data Source=source;User Id=/;" />
</connectionStrings>

подскажите пожалуйста в чем тут может быть дело


person Watson Ferror    schedule 09.04.2017    source источник
comment
Я также попытался добавить следующие комбинации на sqlnet.ora - все тот же "SQLNET.WALLET_OVERRIDE = TRUE" "SSL_CLIENT_AUTHENTICATION = FALSE" "SSL_VERSION = 0"   -  person Watson Ferror    schedule 09.04.2017


Ответы (1)


В последней документации ODP.NET 12.2 более подробная информация по шагам по настройке управляемого ODP.NET с TLS/SSL с кошельками. Если вы все еще сталкиваетесь с ошибкой, я бы рекомендовал открыть запрос на обслуживание в службу поддержки Oracle и предоставить трассировки как со стороны клиента, так и со стороны сервера. Использование кошельков в значительной степени является упражнением по настройке. Трассировки упрощают определение неправильной настройки какого-либо параметра или пропущенного шага. Поскольку информация о трассировке очень подробная, НЕ рекомендуется размещать эту информацию на SO или где-либо еще в общедоступном Интернете.

person Alex Keh    schedule 10.04.2017
comment
Спасибо за ответ, ваше предложение использовать 12.2 кажется единственным выходом в моем случае. Я только что узнал об ошибке Oracle. ), установить соединение с базой данных не удается с сообщением ORA-1017: неверный логин. - person Watson Ferror; 11.04.2017
comment
Я не думаю, что это ошибка 19261209. Эта ошибка была исправлена ​​в 2015 году. Исправление должно быть частью любого управляемого ODP.NET 12.1, выпущенного за последние полтора года. Тем не менее, я бы по-прежнему рекомендовал вам использовать ODP.NET 12.2 просто для того, чтобы убедиться, что вы не столкнулись с другой известной проблемой, которая уже исправлена. - person Alex Keh; 11.04.2017