AuthenticationFilter exception when trying to import data with the opal-datasource-redcap plugin

29 views
Skip to first unread message

Francoi...@dti.ulaval.ca

unread,
Mar 22, 2021, 9:01:10 AM3/22/21
to obiba-users
I tried to deploy and configure the opal-datasource-redcap plugin (both versions 1.1.2 and 1.2.0). I am running Opal v3.0.2. I configured the plugin with the parameters of my local REDCap server, but as soon as I hit the import button, I get the following shiro exception.

Any clue on what is going on?

Thanks,

---------------------------------------------------------------------------------------------

2021-03-22 08:54:39,449 [qtp1969752268-34] ERROR org.obiba.shiro.web.filter.AuthenticationFilter - Exception
java.lang.NullPointerException: null
        at org.obiba.opal.web.magma.ClientErrorDtos.newErrorDto(ClientErrorDtos.java:129) ~[opal-core-ws-3.0.2.jar:na]
        at org.obiba.opal.web.magma.ClientErrorDtos.getErrorMessage(ClientErrorDtos.java:90) ~[opal-core-ws-3.0.2.jar:na]
        at org.obiba.opal.web.magma.provider.DatasourceParsingExceptionMapper.getErrorDto(DatasourceParsingExceptionMapper.java:35) ~[opal-core-ws-3.0.2.jar:na]
        at org.obiba.opal.web.magma.provider.DatasourceParsingExceptionMapper.getErrorDto(DatasourceParsingExceptionMapper.java:24) ~[opal-core-ws-3.0.2.jar:na]

Yannick Marcon

unread,
Mar 22, 2021, 9:11:54 AM3/22/21
to obiba...@googlegroups.com
Hi,

Shiro is not the primary cause of the failure: it is the reading of the redcap datasource that failed (and that reported a broken error message). Do you have the primary cause from the exception stack? What version of Redcap do you use?

Yannick


--
You received this message because you are subscribed to the Google Groups "obiba-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to obiba-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/obiba-users/0b66e977-e972-4246-8894-bd4becc49767n%40googlegroups.com.

Francoi...@dti.ulaval.ca

unread,
Mar 22, 2021, 3:13:47 PM3/22/21
to obiba-users
We are running REDCap v10.6.9.

All I can see is that Opal contacts REDCap, but generates a 403 error in the access_log file.

I checked the source code of the opal-datasource-redcap plugin and I managed to manually send curl requests successfully to my REDCap server using the same token/parameters (i.e. "instrument/metadata/record/project/repeatingFormsEvents"). I even went as far as adding System.err.println() statements in the source code + recompiling + redeploy on my Opal server, without seeing anything useful.

Here is the content of my site.properties file:

#
# Default values
#

# REDCap server address

# REDCap access token
token=47210F24DB8AE095D20BB417EC238BC2

# REDCap ID variable
id_variable=opal_id

# Entity type
entity_type=Participant

Yannick Marcon

unread,
Mar 23, 2021, 4:07:58 AM3/23/21
to obiba...@googlegroups.com
If you are able to recompile the plugin, then try with the latest code, I have removed the null parameter when a datasource exception is thrown. Then we'll know more about this DatasourceParsingException.

Yannick

Cédric Fontin

unread,
Mar 23, 2021, 6:50:48 AM3/23/21
to obiba...@googlegroups.com

Hi,

Trying to query your server using curl -X POST https://redcap.dev.valeria.science/api/ -H "Accept: application/json" -d token=47210F24DB8AE095D20BB417EC238BC2 -d format=json -d content=project, I get the error curl: (35) error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small.

This seems to be related to your server’s openssl security/cipher configuration (looks to be the CipherString option in /etc/ssh/openssl.cnf).

The way to make it work is by adding the option --cipher 'DEFAULT:!DH' which results in curl -X POST https://redcap.dev.valeria.science/api/ -H "Accept: application/json" -d token=47210F24DB8AE095D20BB417EC238BC2 -d format=json -d content=project --cipher 'DEFAULT:!DH'.

Regards.


Yannick Marcon

unread,
Mar 23, 2021, 7:53:04 AM3/23/21
to obiba...@googlegroups.com
Cédric,

I cannot reproduce this Cipher issue. It works as expected for me.

Yannick

Cédric Fontin

unread,
Mar 23, 2021, 8:05:19 AM3/23/21
to obiba...@googlegroups.com

I am using debian buster (debian testing).
In my /etc/ssl/openssl.cnf, I do have theCipherString = DEFAULT@SECLEVEL=2` line which seems to be related to the issue.

My openssl version is 1.1.1j-1 which is mentioned in this debian bug report log.


Reply all
Reply to author
Forward
Message has been deleted
0 new messages