Keywords: Harmony, Columbus, transfer, transferring, data, OMERO, security, violation,
Below is an example error as shown in the Columbus job status page for a Harmony to Columbus transfer job:
Error caught: /usr/local/PerkinElmerCTG/Acapella-5.1.1/AcapellaResources/AcapellaColumbusWebapp/ProcLib/columbus/columbus_dataimport_screen.proc(800) [Columbus::SetMeasurementFromSourcedata]:
<!>/usr/local/PerkinElmerCTG/Acapella-5.1.1/AcapellaResources/AcapellaColumbusWebapp/ProcLib/columbus/columbus20_support_screen.proc(223) [::Error]: OMERO/Ice exception: omero::SecurityViolation
Typically the "omero::SecurityViolation" error means that the Columbus user in question (the Columbus user you have logged in as through Harmony for data transfer) does not have permission to write to the selected screen folder. In most cases this is due to the users default group having changed since the point at which the screen folder was originally created.
A bit of background information about the user, group and data association in Columbus:
A particular dataset is owned by a user and an associated group account, the user's default group. For example, if a columbus user's default group is the group named 'default'. Data that has been uploaded recently by this columbus user is visible to all members of this 'default' user group. Furthermore if you have a different user 'user1', it has to be member of the group 'default' to see this data. In order to share data within a group named for instance 'group1' it has to be uploaded by a user account having the default group 'group1'.
A user can be a member of multiple groups BUT screens folders/data is only ever owned by the user and the default group of that user at the point the screen was created and the data imported.
You can check the default group of the Columbus user account as follows:
- Login to the Columbus web UI as the user in question
- Go to Administration > My Account
You should see the default group listed as shown below:
Or as admin/root:
- Login to the webUI as the root Columbus user
- Go to Administration > Users and Groups > User
- Click on the user in question
- The first group in the list is the designated default group for that user.
If the default group of the user has changed since the screen folder in question was created, this will explain the error.
Use the following test to see if this is the root cause of the error:
Create a new screen folder in Columbus
- login to the Columbus web user interface as the ''User'' in question.
- Create a new screen folder in the users data tree. The newly created screen folder will be owned by the user and whichever group is current set as the default group (see above example to check group association).
Transfer from Harmony
- Login to Harmony.
- Select Settings and click on User Accounts.
- Login with the same credentials as used to login to Harmony.
- Select Manage Columbus Account.
- Enter the details to login to the Columbus server and user account (the same account used to create the new screen folder.
- Close the User Accounts dialog.
- Select Settings > Data Management > Columbus Transfer
- Define the Selected Data to be transferred and set the the Columbus Screen Name to your newly created screen folder.
If the transfer of data into the newly created screen folder works then this confirms that it is a permissions issue and is likely to be caused by a change to the user's original default group.