ODP.Net using TCPS in IIS — oracle-tech

    Forum Stats

  • 3,715,657 Users
  • 2,242,821 Discussions
  • 7,845,481 Comments

Discussions

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

ODP.Net using TCPS in IIS

3986894
3986894 Member Posts: 2
edited May 2019 in ODP.NET

Hi!

I'm using VS.Net 2019 to build a simple single webpage (*.aspx) that connects to my Oracle database using ODP.Net (Oracle.ManagedDataAccess, Version=4.122.18.3) over port 2484 and protocol TCPS.

The database is located in another server, not my dev box, and is ready for TCPS. The certificate is already installed in MCS in my dev box.

The certificate is stored in MCS in these locations:

Local Computer\Trusted Root Certification Authorities = LocalMachine\Root

Local Computer\Personal = LocalMachine\My

Current User\Trusted Root Certification Authorities = CurrentUser\Root

Current User\Personal = CurrentUser\My

My simple web application is connecting fine to the database when I run it from VS.Net 2019 (IISExpress) using these settings:

<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>

  </version>

</oracle.manageddataaccess.client>

And connection string is:

<add name="DBConnString" connectionString="USER ID={user};PASSWORD={password};DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST={host ip})(PORT=2484)))(CONNECT_DATA = (SID = {sid})))) " />

But when I deploy the app to my local IIS (dev box is Windows 10 and IIS version is 10.0.17134.1 (WinBuild.160101.0800)) and navigate to the webpage.aspx the connection cannot be established.

The error message is "Network Transport: SSL failure in parsing wallet location".

Where should the certificate be stored for Wallet METHOD=MCS in IIS? Am I missing an ODP.Net setting to make this work?

Best Answer

  • 3986894
    3986894 Member Posts: 2
    edited May 2019 Accepted Answer

    Hi Alex,

    This is my trace log. All username, password, and IP were replaced with "*****".

    It looks like the Wallet location is correct (MCS).

    ```

    W3WP.EXE_PID_3264_TID_7_DATE_2019_05_02_TIME_09_11_26.trc

    2019-05-02 09:11:26.270673 TID:7   (CFG) (ENV)      Machine Name : DESKTOP-DV535LI

    2019-05-02 09:11:26.287672 TID:7   (CFG) (ENV)      User Name : DefaultAppPool

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      OS Version : Microsoft Windows NT 10.0.17134.0

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      64-bit OS : True

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      64-bit Process : True

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      .NET Runtime Version : 4.0.30319.42000

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      Application Directory : C:\inetpub\wwwroot\WebSites\ODPTCPSTest

    2019-05-02 09:11:26.292671 TID:7   (CFG) (VER)      Oracle Data Provider for .NET, Managed Driver Version : 4.122.18.3

    2019-05-02 09:11:26.296680 TID:7   (CFG) (VER)      Oracle Data Provider for .NET, Managed Driver Informational Version : 4.122.18.3:20190317

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     TraceOption : 1

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     TraceFileLocation : C:\trace

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     TraceLevel : 7

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     WALLET_LOCATION : (SOURCE = (METHOD = MCS))

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     Resolved Trace File Location: C:\trace

    2019-05-02 09:11:26.325671 TID:7   (CFG) (SQLNET)   FilePath : (null)

    2019-05-02 09:11:26.325671 TID:7   (CFG) (TNSNAMES) FilePath : (null)

    2019-05-02 09:11:26.325671 TID:7   (PUB) (ENT) OracleConnection.ctor()

    2019-05-02 09:11:26.347672 TID:7   (PRI) (ENT) (CP) ConnectionString.GetCS()

    2019-05-02 09:11:26.349672 TID:7   (PRI) (ENT) (CP) ConnectionString.ctor()

    2019-05-02 09:11:26.368675 TID:7   (PRI) (ENT) (CP) ConnectionString.Parse()

    2019-05-02 09:11:26.375672 TID:7   (PRI) (ENT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.376672 TID:7   (PRI) (EXT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (ENT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (EXT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (ENT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (EXT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (EXT) (CP) ConnectionString.Parse()

    2019-05-02 09:11:26.383672 TID:7   (PRI) (EXT) (CP) ConnectionString.ctor()

    2019-05-02 09:11:26.383672 TID:7   (PRI) (EXT) (CP) ConnectionString.GetCS()

    2019-05-02 09:11:26.397672 TID:7   (PUB) (EXT) OracleConnection.ctor()

    2019-05-02 09:11:26.450671 TID:7   (PUB) (ENT) OracleConnection.Open() (conid=11178428) (state=Closed) (sessid=0) (implid=0) (pooling=T) (txnid=n/a)

    2019-05-02 09:11:26.460673 TID:7   (PRI) (ENT) (CP) OracleConnectionDispenser..cctor()

    2019-05-02 09:11:26.460673 TID:7   (PRI) (EXT) (CP) OracleConnectionDispenser..cctor()

    2019-05-02 09:11:26.460673 TID:7   (PRI) (ENT) (CP) OracleConnectionDispenser.Get()

    2019-05-02 09:11:26.466672 TID:7   (PRI) (ENT) (CP) PoolManager.ctor()

    2019-05-02 09:11:26.488700 TID:7   (PRI) (EXT) (CP) PoolManager.ctor()

    2019-05-02 09:11:26.492672 TID:7   (PRI) (ENT) (CP) PoolManager.Initialize() (constr=USER ID=*****;DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=*****)(PORT=2484)))(CONNECT_DATA = (SID = DRDB)))) )

    2019-05-02 09:11:26.522675 TID:7   (PRI) (EXT) (CP) PoolManager.Initialize() (pmid=33343808) (constr=USER ID=*****;DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=*****)(PORT=2484)))(CONNECT_DATA = (SID = DRDB)))) )

    2019-05-02 09:11:26.529672 TID:7   (PRI) (BUF) (OBP.CTOR) (poolid:26603861) (OracleConnectionDispenser`3.GetPM)

    2019-05-02 09:11:26.536686 TID:7   (PRI) (ENT) (CP) OraclePoolManager.Get()

    2019-05-02 09:11:26.586676 TID:7   (PRI) (ENT) (CP) PoolManager.Get() (txnid=n/a) (bForceMatch=F)

    2019-05-02 09:11:26.587673 TID:7   (PRI) (ENT) (CP) PoolManager.Get() MultiTenant : Searching for a idle connection, retryCountWithoutAffinity: 0

    2019-05-02 09:11:26.588672 TID:7   (PRI) (ENT) PoolManager.ProcessCriteriaCtx_NonEnlistedConnection()

    2019-05-02 09:11:26.588672 TID:7   (PRI) (EXT) PoolManager.ProcessCriteriaCtx_NonEnlistedConnection()

    2019-05-02 09:11:26.595673 TID:7   (PRI) (ENT) (CP) PoolManager.CreateNewPR() (txnid=n/a)

    2019-05-02 09:11:26.853676 TID:7   (PRI) (ENT) TimeStamp.GetLocalTZOffset()

    2019-05-02 09:11:26.856672 TID:7   (PRI) (EXT) TimeStamp.GetLocalTZOffset()

    2019-05-02 09:11:27.040673 TID:7   (PRI) (ENT) PoolManager.CreateNewPR()

    2019-05-02 09:11:27.041672 TID:7   (PRI) (ERR) (CP) PoolManager.CreateNewPR() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.CreateNewPR(Int32 reqCount, Boolean bForPoolPopulation, ConnectionString csWithDiffOrNewPwd, OracleConnection connRefForCriteria, String instanceName, List`1 switchFailedInstNames)

    2019-05-02 09:11:27.041672 TID:7   (PRI) (EXT) PoolManager.CreateNewPR()

    2019-05-02 09:11:27.041672 TID:7   (PRI) (EXT) (CP) PoolManager.CreateNewPR() (aff=n/a) (inst=) (affmatch=n/a) (pr.service=) (pr.pdb=) (pr.edition=) (sessid=-1:-1) (F;F;F;;N) (pmid=33343808)

    2019-05-02 09:11:27.042673 TID:7   (PRI) (EXT) (CP) PoolManager.Get() (txnid=n/a) PM.Get(aff=;force=F) returning (null)

    2019-05-02 09:11:27.042673 TID:7   (PRI) (ENT) OraclePoolManager.Get()

    2019-05-02 09:11:27.042673 TID:7   (PRI) (ERR) (CP) OraclePoolManager.Get() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

    2019-05-02 09:11:27.042673 TID:7   (PRI) (EXT) OraclePoolManager.Get()

    2019-05-02 09:11:27.042673 TID:7   (PRI) (EXT) (CP) OraclePoolManager.Get() (txnid=n/a)

    2019-05-02 09:11:27.044672 TID:7   (PRI) (ENT) OracleConnectionDispenser.Get()

    2019-05-02 09:11:27.045673 TID:7   (PRI) (ERR) (CP) OracleConnectionDispenser.Get() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword, OracleConnection connRefForCriteria)

    2019-05-02 09:11:27.045673 TID:7   (PRI) (EXT) OracleConnectionDispenser.Get()

    2019-05-02 09:11:27.045673 TID:7   (PRI) (EXT) (CP) OracleConnectionDispenser.Get() (txnid=n/a)

    2019-05-02 09:11:27.045673 TID:7   (PRI) (ENT) OracleConnection.Open()

    2019-05-02 09:11:27.045673 TID:7   (PUB) (ERR) OracleConnection.Open() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword, OracleConnection connRefForCriteria)

       at Oracle.ManagedDataAccess.Client.OracleConnection.Open()

    2019-05-02 09:11:27.045673 TID:7   (PRI) (EXT) OracleConnection.Open()

    2019-05-02 09:11:27.045673 TID:7   (PUB) (EXT) OracleConnection.Open() (conid=11178428) (state=Closed) (sessid=0) (implid=0) (pooling=T) (txnid=n/a)

    W3WP.EXE_PID_3264_TID_8_DATE_2019_05_02_TIME_09_11_26.trc

    2019-05-02 09:11:26.872678 TID:8   (PRI) (ENT) (CP) PoolManager.CreateNewPRThreadFunc()

    2019-05-02 09:11:26.875673 TID:8   (PRI) (ENT) (CP) PoolManager.CreateNewPRThreadFunc() (initiated by TID:7)

    2019-05-02 09:11:26.896672 TID:8   (PRI) (SVC) (ENT) OracleConnectionImpl.Connect() (oper=open) (aff=n/a) (inst=) (affmatch=n/a) (pr.service=) (pr.pdb=) (pr.edition=) (sessid=-1:-1) (F;F;F;;N) (pmid=33343808)

    2019-05-02 09:11:26.899672 TID:8   (PRI) (BUF) (COBP.CTOR) (poolid:1) (parentpoolid:26603861) (OracleConnectionImpl.Connect)

    2019-05-02 09:11:26.929672 TID:8   (NET) (ENT) TcpsTransportAdapter.Connect()

    2019-05-02 09:11:26.934673 TID:8   (NET) (ENT) TcpTransportAdapter.Connect()

    2019-05-02 09:11:26.939672 TID:8   (NET)      Trying (host=*****) (port=2484)

    2019-05-02 09:11:26.939672 TID:8   (NET) (EXT) TcpTransportAdapter.Connect()

    2019-05-02 09:11:26.939672 TID:8   (NET) (EXT) TcpsTransportAdapter.Connect()

    2019-05-02 09:11:26.940672 TID:8   (NET) (ENT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.944671 TID:8   (NET) (ENT) TcpTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.947673 TID:8   (NET)      Trying (address=*****) (port=2484)

    2019-05-02 09:11:26.962672 TID:8   (NET) (ENT) TcpsTransportAdapter.Negotiate()

    2019-05-02 09:11:26.962672 TID:8   (NET) (SQLNET) SSLVersion = 0. SSLProtocol = Default, Tls11, Tls12.

    2019-05-02 09:11:26.989671 TID:8   (NET) (ENT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.990672 TID:8   (NET) (ENT) TcpTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.990672 TID:8   (NET)      Trying (address=*****) (port=2484)

    2019-05-02 09:11:26.990672 TID:8   (NET) (ENT) TcpsTransportAdapter.Negotiate()

    2019-05-02 09:11:26.990672 TID:8   (NET) (SQLNET) SSLVersion = 0. SSLProtocol = Default, Tls11, Tls12.

    2019-05-02 09:11:26.991673 TID:8   (NET) (ENT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.991673 TID:8   (NET) (ENT) TcpTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.991673 TID:8   (NET) (EXT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.995671 TID:8   (PRI) (ENT) OracleConnectionImpl.Connect()

    2019-05-02 09:11:26.998672 TID:8   (PRI) (ENT) OracleException.ctor()

    2019-05-02 09:11:27.036673 TID:8   (PRI) (ENT) OracleError.ctor()

    2019-05-02 09:11:27.036673 TID:8   (PRI) (EXT) OracleError.ctor()

    2019-05-02 09:11:27.036673 TID:8   (PRI) (EXT) OracleException.ctor()

    2019-05-02 09:11:27.039671 TID:8   (PRI) (SVC) (ERR) OracleConnectionImpl.Connect() (txnid=n/a) OracleInternal.Network.NetworkException (0xFFFFE700): Network Transport: SSL failure in parsing wallet location

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

    2019-05-02 09:11:27.039671 TID:8   (PRI) (EXT) OracleConnectionImpl.Connect()

    2019-05-02 09:11:27.039671 TID:8   (PRI) (SVC) (EXT) OracleConnectionImpl.Connect() (oper=open) (aff=n/a) (inst=) (affmatch=n/a) (pr.service=) (pr.pdb=) (pr.edition=) (sessid=-1:-1) (F;F;F;;N) (pmid=33343808)

    2019-05-02 09:11:27.040673 TID:8   (PRI) (EXT) (CP) PoolManager.CreateNewPRThreadFunc()

    ```

    Now, the user name register in the trace is the IIS Application Pool that is assigned to the app.

    2019-05-02 09:11:26.287672 TID:7   (CFG) (ENV)      User Name : DefaultAppPool

    But from VS.Net 2019 (where is connecting fine) the user name in the trace log is my user account. After changing the application pool identity to use my account it connects. Although, that shouldn't be the best practice, at least we know is a security issue and not an ODP.Net/Wallet issue.

Answers

  • Alex Keh-Oracle
    Alex Keh-Oracle Posts: 2,751 Employee
    edited May 2019

    Take a look at the ODP.NET trace. It should indicate which location it's looking for the wallet.

  • 3986894
    3986894 Member Posts: 2
    edited May 2019 Accepted Answer

    Hi Alex,

    This is my trace log. All username, password, and IP were replaced with "*****".

    It looks like the Wallet location is correct (MCS).

    ```

    W3WP.EXE_PID_3264_TID_7_DATE_2019_05_02_TIME_09_11_26.trc

    2019-05-02 09:11:26.270673 TID:7   (CFG) (ENV)      Machine Name : DESKTOP-DV535LI

    2019-05-02 09:11:26.287672 TID:7   (CFG) (ENV)      User Name : DefaultAppPool

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      OS Version : Microsoft Windows NT 10.0.17134.0

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      64-bit OS : True

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      64-bit Process : True

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      .NET Runtime Version : 4.0.30319.42000

    2019-05-02 09:11:26.290672 TID:7   (CFG) (ENV)      Application Directory : C:\inetpub\wwwroot\WebSites\ODPTCPSTest

    2019-05-02 09:11:26.292671 TID:7   (CFG) (VER)      Oracle Data Provider for .NET, Managed Driver Version : 4.122.18.3

    2019-05-02 09:11:26.296680 TID:7   (CFG) (VER)      Oracle Data Provider for .NET, Managed Driver Informational Version : 4.122.18.3:20190317

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     TraceOption : 1

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     TraceFileLocation : C:\trace

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     TraceLevel : 7

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     WALLET_LOCATION : (SOURCE = (METHOD = MCS))

    2019-05-02 09:11:26.296680 TID:7   (CFG) (.NET)     Resolved Trace File Location: C:\trace

    2019-05-02 09:11:26.325671 TID:7   (CFG) (SQLNET)   FilePath : (null)

    2019-05-02 09:11:26.325671 TID:7   (CFG) (TNSNAMES) FilePath : (null)

    2019-05-02 09:11:26.325671 TID:7   (PUB) (ENT) OracleConnection.ctor()

    2019-05-02 09:11:26.347672 TID:7   (PRI) (ENT) (CP) ConnectionString.GetCS()

    2019-05-02 09:11:26.349672 TID:7   (PRI) (ENT) (CP) ConnectionString.ctor()

    2019-05-02 09:11:26.368675 TID:7   (PRI) (ENT) (CP) ConnectionString.Parse()

    2019-05-02 09:11:26.375672 TID:7   (PRI) (ENT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.376672 TID:7   (PRI) (EXT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (ENT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (EXT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (ENT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (EXT) (CP) ConnectionString.SetProperty()

    2019-05-02 09:11:26.382671 TID:7   (PRI) (EXT) (CP) ConnectionString.Parse()

    2019-05-02 09:11:26.383672 TID:7   (PRI) (EXT) (CP) ConnectionString.ctor()

    2019-05-02 09:11:26.383672 TID:7   (PRI) (EXT) (CP) ConnectionString.GetCS()

    2019-05-02 09:11:26.397672 TID:7   (PUB) (EXT) OracleConnection.ctor()

    2019-05-02 09:11:26.450671 TID:7   (PUB) (ENT) OracleConnection.Open() (conid=11178428) (state=Closed) (sessid=0) (implid=0) (pooling=T) (txnid=n/a)

    2019-05-02 09:11:26.460673 TID:7   (PRI) (ENT) (CP) OracleConnectionDispenser..cctor()

    2019-05-02 09:11:26.460673 TID:7   (PRI) (EXT) (CP) OracleConnectionDispenser..cctor()

    2019-05-02 09:11:26.460673 TID:7   (PRI) (ENT) (CP) OracleConnectionDispenser.Get()

    2019-05-02 09:11:26.466672 TID:7   (PRI) (ENT) (CP) PoolManager.ctor()

    2019-05-02 09:11:26.488700 TID:7   (PRI) (EXT) (CP) PoolManager.ctor()

    2019-05-02 09:11:26.492672 TID:7   (PRI) (ENT) (CP) PoolManager.Initialize() (constr=USER ID=*****;DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=*****)(PORT=2484)))(CONNECT_DATA = (SID = DRDB)))) )

    2019-05-02 09:11:26.522675 TID:7   (PRI) (EXT) (CP) PoolManager.Initialize() (pmid=33343808) (constr=USER ID=*****;DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=*****)(PORT=2484)))(CONNECT_DATA = (SID = DRDB)))) )

    2019-05-02 09:11:26.529672 TID:7   (PRI) (BUF) (OBP.CTOR) (poolid:26603861) (OracleConnectionDispenser`3.GetPM)

    2019-05-02 09:11:26.536686 TID:7   (PRI) (ENT) (CP) OraclePoolManager.Get()

    2019-05-02 09:11:26.586676 TID:7   (PRI) (ENT) (CP) PoolManager.Get() (txnid=n/a) (bForceMatch=F)

    2019-05-02 09:11:26.587673 TID:7   (PRI) (ENT) (CP) PoolManager.Get() MultiTenant : Searching for a idle connection, retryCountWithoutAffinity: 0

    2019-05-02 09:11:26.588672 TID:7   (PRI) (ENT) PoolManager.ProcessCriteriaCtx_NonEnlistedConnection()

    2019-05-02 09:11:26.588672 TID:7   (PRI) (EXT) PoolManager.ProcessCriteriaCtx_NonEnlistedConnection()

    2019-05-02 09:11:26.595673 TID:7   (PRI) (ENT) (CP) PoolManager.CreateNewPR() (txnid=n/a)

    2019-05-02 09:11:26.853676 TID:7   (PRI) (ENT) TimeStamp.GetLocalTZOffset()

    2019-05-02 09:11:26.856672 TID:7   (PRI) (EXT) TimeStamp.GetLocalTZOffset()

    2019-05-02 09:11:27.040673 TID:7   (PRI) (ENT) PoolManager.CreateNewPR()

    2019-05-02 09:11:27.041672 TID:7   (PRI) (ERR) (CP) PoolManager.CreateNewPR() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.CreateNewPR(Int32 reqCount, Boolean bForPoolPopulation, ConnectionString csWithDiffOrNewPwd, OracleConnection connRefForCriteria, String instanceName, List`1 switchFailedInstNames)

    2019-05-02 09:11:27.041672 TID:7   (PRI) (EXT) PoolManager.CreateNewPR()

    2019-05-02 09:11:27.041672 TID:7   (PRI) (EXT) (CP) PoolManager.CreateNewPR() (aff=n/a) (inst=) (affmatch=n/a) (pr.service=) (pr.pdb=) (pr.edition=) (sessid=-1:-1) (F;F;F;;N) (pmid=33343808)

    2019-05-02 09:11:27.042673 TID:7   (PRI) (EXT) (CP) PoolManager.Get() (txnid=n/a) PM.Get(aff=;force=F) returning (null)

    2019-05-02 09:11:27.042673 TID:7   (PRI) (ENT) OraclePoolManager.Get()

    2019-05-02 09:11:27.042673 TID:7   (PRI) (ERR) (CP) OraclePoolManager.Get() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

    2019-05-02 09:11:27.042673 TID:7   (PRI) (EXT) OraclePoolManager.Get()

    2019-05-02 09:11:27.042673 TID:7   (PRI) (EXT) (CP) OraclePoolManager.Get() (txnid=n/a)

    2019-05-02 09:11:27.044672 TID:7   (PRI) (ENT) OracleConnectionDispenser.Get()

    2019-05-02 09:11:27.045673 TID:7   (PRI) (ERR) (CP) OracleConnectionDispenser.Get() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword, OracleConnection connRefForCriteria)

    2019-05-02 09:11:27.045673 TID:7   (PRI) (EXT) OracleConnectionDispenser.Get()

    2019-05-02 09:11:27.045673 TID:7   (PRI) (EXT) (CP) OracleConnectionDispenser.Get() (txnid=n/a)

    2019-05-02 09:11:27.045673 TID:7   (PRI) (ENT) OracleConnection.Open()

    2019-05-02 09:11:27.045673 TID:7   (PUB) (ERR) OracleConnection.Open() (txnid=n/a) 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

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

       at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch)

       at OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword, OracleConnection connRefForCriteria)

       at Oracle.ManagedDataAccess.Client.OracleConnection.Open()

    2019-05-02 09:11:27.045673 TID:7   (PRI) (EXT) OracleConnection.Open()

    2019-05-02 09:11:27.045673 TID:7   (PUB) (EXT) OracleConnection.Open() (conid=11178428) (state=Closed) (sessid=0) (implid=0) (pooling=T) (txnid=n/a)

    W3WP.EXE_PID_3264_TID_8_DATE_2019_05_02_TIME_09_11_26.trc

    2019-05-02 09:11:26.872678 TID:8   (PRI) (ENT) (CP) PoolManager.CreateNewPRThreadFunc()

    2019-05-02 09:11:26.875673 TID:8   (PRI) (ENT) (CP) PoolManager.CreateNewPRThreadFunc() (initiated by TID:7)

    2019-05-02 09:11:26.896672 TID:8   (PRI) (SVC) (ENT) OracleConnectionImpl.Connect() (oper=open) (aff=n/a) (inst=) (affmatch=n/a) (pr.service=) (pr.pdb=) (pr.edition=) (sessid=-1:-1) (F;F;F;;N) (pmid=33343808)

    2019-05-02 09:11:26.899672 TID:8   (PRI) (BUF) (COBP.CTOR) (poolid:1) (parentpoolid:26603861) (OracleConnectionImpl.Connect)

    2019-05-02 09:11:26.929672 TID:8   (NET) (ENT) TcpsTransportAdapter.Connect()

    2019-05-02 09:11:26.934673 TID:8   (NET) (ENT) TcpTransportAdapter.Connect()

    2019-05-02 09:11:26.939672 TID:8   (NET)      Trying (host=*****) (port=2484)

    2019-05-02 09:11:26.939672 TID:8   (NET) (EXT) TcpTransportAdapter.Connect()

    2019-05-02 09:11:26.939672 TID:8   (NET) (EXT) TcpsTransportAdapter.Connect()

    2019-05-02 09:11:26.940672 TID:8   (NET) (ENT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.944671 TID:8   (NET) (ENT) TcpTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.947673 TID:8   (NET)      Trying (address=*****) (port=2484)

    2019-05-02 09:11:26.962672 TID:8   (NET) (ENT) TcpsTransportAdapter.Negotiate()

    2019-05-02 09:11:26.962672 TID:8   (NET) (SQLNET) SSLVersion = 0. SSLProtocol = Default, Tls11, Tls12.

    2019-05-02 09:11:26.989671 TID:8   (NET) (ENT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.990672 TID:8   (NET) (ENT) TcpTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.990672 TID:8   (NET)      Trying (address=*****) (port=2484)

    2019-05-02 09:11:26.990672 TID:8   (NET) (ENT) TcpsTransportAdapter.Negotiate()

    2019-05-02 09:11:26.990672 TID:8   (NET) (SQLNET) SSLVersion = 0. SSLProtocol = Default, Tls11, Tls12.

    2019-05-02 09:11:26.991673 TID:8   (NET) (ENT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.991673 TID:8   (NET) (ENT) TcpTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.991673 TID:8   (NET) (EXT) TcpsTransportAdapter.ConnectIterate()

    2019-05-02 09:11:26.995671 TID:8   (PRI) (ENT) OracleConnectionImpl.Connect()

    2019-05-02 09:11:26.998672 TID:8   (PRI) (ENT) OracleException.ctor()

    2019-05-02 09:11:27.036673 TID:8   (PRI) (ENT) OracleError.ctor()

    2019-05-02 09:11:27.036673 TID:8   (PRI) (EXT) OracleError.ctor()

    2019-05-02 09:11:27.036673 TID:8   (PRI) (EXT) OracleException.ctor()

    2019-05-02 09:11:27.039671 TID:8   (PRI) (SVC) (ERR) OracleConnectionImpl.Connect() (txnid=n/a) OracleInternal.Network.NetworkException (0xFFFFE700): Network Transport: SSL failure in parsing wallet location

       at OracleInternal.Network.OracleCommunication.DoConnect(String tnsDescriptor)

       at OracleInternal.ServiceObjects.OracleConnectionImpl.Connect(ConnectionString cs, Boolean bOpenEndUserSession, OracleConnection connRefForCriteria, String instanceName)

    2019-05-02 09:11:27.039671 TID:8   (PRI) (EXT) OracleConnectionImpl.Connect()

    2019-05-02 09:11:27.039671 TID:8   (PRI) (SVC) (EXT) OracleConnectionImpl.Connect() (oper=open) (aff=n/a) (inst=) (affmatch=n/a) (pr.service=) (pr.pdb=) (pr.edition=) (sessid=-1:-1) (F;F;F;;N) (pmid=33343808)

    2019-05-02 09:11:27.040673 TID:8   (PRI) (EXT) (CP) PoolManager.CreateNewPRThreadFunc()

    ```

    Now, the user name register in the trace is the IIS Application Pool that is assigned to the app.

    2019-05-02 09:11:26.287672 TID:7   (CFG) (ENV)      User Name : DefaultAppPool

    But from VS.Net 2019 (where is connecting fine) the user name in the trace log is my user account. After changing the application pool identity to use my account it connects. Although, that shouldn't be the best practice, at least we know is a security issue and not an ODP.Net/Wallet issue.

  • Alex Keh-Oracle
    Alex Keh-Oracle Posts: 2,751 Employee
    edited May 2019

    Looks like the solution is to tie the wallet to the app pool user identity.

Sign In or Register to comment.