Skip to content

Plugin fails when Oracle enforces network encryption (AES256/SHA512) #32

@rbilek-cen57757

Description

@rbilek-cen57757

Plugin fails when Oracle enforces network encryption (AES256/SHA512)

Hello,
After our Oracle DBAs enabled mandatory encrypted communication on one of our environments, the utPLSQL plugin for PL/SQL Developer stopped working:

In other environments where encryption is not yet enforced, the plugin continues to work correctly. The issue started immediately after the encryption configuration was introduced.
I needed to add (Security=(ENCRYPTION_CLIENT=REQUIRED)(ENCRYPTION_TYPES_CLIENT=AES256)(CRYPTO_CHECKSUM_CLIENT=REQUIRED)(CRYPTO_CHECKSUM_TYPES_CLIENT=SHA512)) to connections in tnsnames.ora. PLSQL Developer works correctly with mandatory encryption.


What happens

  • After clicking "Run tests", the UI shows “Running tests...”, but no tests are actually executed.
    Image

  • No tests are running on the database (verified via logs).

  • When clicking "Abort", the plugin throws:
    Image

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.InvalidOperationException: Connection must be open for this operation
   at Oracle.ManagedDataAccess.Client.OracleCommand.ValidateStatePriorToExecution()
   at Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteNonQuery()
   at utPLSQL.RealTimeTestRunner.UtRun(String id, List`1 paths)
   at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at utPLSQL.RealTimeTestRunner.<RunTestsAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at utPLSQL.TestRunnerWindow.<RunTestsAsync>d__26.MoveNext() in c:\Users\simon\Workspace\utPLSQL\utPLSQL-PLSQL-Developer\PlsqlDeveloperUtPlsqlPlugin\utPLSQL.Ui\TestRunnerWindow.cs:line 158
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at utPLSQL.TestRunnerWindow.<btnRun_Click>d__52.MoveNext() in c:\Users\simon\Workspace\utPLSQL\utPLSQL-PLSQL-Developer\PlsqlDeveloperUtPlsqlPlugin\utPLSQL.Ui\TestRunnerWindow.cs:line 656
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9300.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
PlsqlDeveloperUtPlsqlPlugin
    Assembly Version: 1.2.4.0
    Win32 Version: 1.2.4.0
    CodeBase: file:///C:/Users/cen57757/OneDrive%20-%20Erste%20Group/Dokumenty/plsql%20developer%20plugins/PlsqlDeveloperUtPlsqlPlugin.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9282.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
utPLSQL.UI
    Assembly Version: 1.2.4.0
    Win32 Version: 1.2.4.0
    CodeBase: file:///C:/Users/cen57757/OneDrive%20-%20Erste%20Group/Dokumenty/plsql%20developer%20plugins/PlsqlDeveloperUtPlsqlPlugin.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9251.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Data
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9214.0 built by: NET481REL1LAST_B
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9297.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
FontAwesome.Sharp
    Assembly Version: 5.15.3.0
    Win32 Version: 1.2.4.0
    CodeBase: file:///C:/Users/cen57757/OneDrive%20-%20Erste%20Group/Dokumenty/plsql%20developer%20plugins/PlsqlDeveloperUtPlsqlPlugin.dll
----------------------------------------
ColorProgressBar
    Assembly Version: 1.2.4.0
    Win32 Version: 1.2.4.0
    CodeBase: file:///C:/Users/cen57757/OneDrive%20-%20Erste%20Group/Dokumenty/plsql%20developer%20plugins/PlsqlDeveloperUtPlsqlPlugin.dll
----------------------------------------
System.Numerics
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
PresentationCore
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9297.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll
----------------------------------------
WindowsBase
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9297.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll
----------------------------------------
PresentationFramework
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9297.0
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.dll
----------------------------------------
System.Xaml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9297.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xaml/v4.0_4.0.0.0__b77a5c561934e089/System.Xaml.dll
----------------------------------------
utPLSQL.Api
    Assembly Version: 1.5.6.0
    Win32 Version: 1.2.4.0
    CodeBase: file:///C:/Users/cen57757/OneDrive%20-%20Erste%20Group/Dokumenty/plsql%20developer%20plugins/PlsqlDeveloperUtPlsqlPlugin.dll
----------------------------------------
Oracle.ManagedDataAccess
    Assembly Version: 4.122.19.1
    Win32 Version: 1.2.4.0
    CodeBase: file:///C:/Users/cen57757/OneDrive%20-%20Erste%20Group/Dokumenty/plsql%20developer%20plugins/PlsqlDeveloperUtPlsqlPlugin.dll
----------------------------------------
System.Transactions
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.Web
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9282.0 built by: NET481REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/System.Web/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Web.dll
----------------------------------------
System.EnterpriseServices
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

As more Oracle installations move toward encrypted communication, this plugin becomes unusable unless it supports those configurations.

I’d be happy to help test a fix or submit a PR if guidance is provided.

Thanks for your work on this plugin.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions