Skip to Main Content

.NET Core: Cannot connect using Oracle Wallet

James DriscollMar 31 2021 — edited Apr 6 2021

Hi!
I am trying to connect to the database using Oracle Wallet and Oracle.ManagedDataAccess.Core v3.21.1
In my SQLNET.ora I have:

WALLET_LOCATION =
(SOURCE =
(METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = C:\Temp\wallet\wallet_test)
))
SQLNET.WALLET_OVERRIDE = TRUE

From the command line I can run this and successfully connect.

sqlplus /@database.alias

In a simple .NET Console application I have:

OracleConfiguration.WalletLocation = @"(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=c:\temp\wallet\wallet_test)))";
OracleConfiguration.SqlNetWalletOverride = true;
OracleConfiguration.TnsAdmin = @"C:\Temp\wallet";
OracleConfiguration.TraceLevel = 7;
OracleConfiguration.TraceFileLocation = @"C:\temp\wallet";
OracleConfiguration.TraceOption = 7;
using var connection = new OracleConnection("User ID=/; Data Source=database.alias");
connection.Open();

And I receive Oracle.ManagedDataAccess.Client.OracleException: 'ORA-01017: invalid username/password; logon denied'

In my trace file I have:

2021-03-30 14:55:56.109247 TID:1 (PRI) (CP) OraclePoolManager.FetchSEPSCredentails() FetchSEPSCredentails => Querying Data Source (TRIAL: 0): database.alias
2021-03-30 14:55:56.125621 TID:1 (NET) (SQLNET) Wallet Location = c:\temp\wallet
2021-03-30 14:55:56.212667 TID:1 (NET) (SQLNET) SEPS userid is null.
2021-03-30 14:55:56.212819 TID:1 (NET) (SQLNET) SEPS password is null.
2021-03-30 14:55:56.212840 TID:1 (PRI) (CP) OraclePoolManager.FetchSEPSCredentails() FetchSEPSCredentails => Got Credentials from Client Wallet

Am I missing something blindly obvious?
Thanks,
James

Comments
Post Details
Added on Mar 31 2021
27 comments
1,822 views